var Target = $('.selected'); // запоминаем DOM-элемент
Target.removeClass('selected'); // удаляем
Target.addClass('selected'); // добавляем
var ProgressBarWidth = $('.ProgressBar').width();
var QtyRequest = 9;
var StepProgressBar = Math.round(ProgressBarWidth / QtyRequest);
$('.ElementIntoProgressBar').animate({"width":StepProgressBar},750);
var param1 = 1;
var param2 = 2;
var param3 = 3;
getFunction(param1,param2,param3);
var param1 = 1;
var param3 = 3;
getFunction(param1,param3);
data = {
param1 = 1,
param2 = 2,
param3 = 3
};
getFunction(data);
function getFunction(data) {
if (data.param1) {} else {}
}
<div class="wrapper">
<div class="leftSidebar">
Left
</div>
<div class="rightSidebar">
Right
</div>
<div class="element">
</div>
</div>
html, body {
display: block;
width: 100%;
height:100%;
margin: 0;
padding: 0;
}
.wrapper {
display: block;
width: 100%;
height: 100%;
background-color: red;
overflow: hidden;
}
.leftSidebar, .rightSidebar {
display: inline-block;
float:left;
width: 50%;
height: 100%;
text-align: center;
}
.leftSidebar {
background-color: #C0C0C0;
}
.rightSidebar {
background-color: #E0E0E0;
}
.element {
display: block;
position: absolute;
top: 0;
left: 50%;
width: 30px;
border: 1px solid #000000;
height: 100%;
background-color: rgba(255, 255, 255, 0.75);
margin: 0 0 0 -16px;
}
.selectOff {
-moz-user-select: none;
-webkit-user-select: none;
user-select: none;
}
$(document).ready(function(){
$('html').on('mousedown','.element',function() {
$(this).css('cursor','e-resize').addClass('elementMove');
$('.leftSidebar, .rightSidebar').addClass('selectOff');
$('.wrapper').on('mousemove',function(e) {
console.log('run');
var CursorPosition = e.pageX - $('body').offset().left;
var WrapperWidth = $('.wrapper').width();
$('.elementMove').css('left',CursorPosition);
$('.leftSidebar').css('width',CursorPosition);
$('.rightSidebar').css('width',WrapperWidth - CursorPosition);
});
});
$('html').on('mouseup','.element',function() {
$(this).css('cursor','default').removeClass('elementMove');
$('.leftSidebar, .rightSidebar').removeClass('selectOff');
$('.wrapper').unbind('mousemove');
});
});
$.ajax({ type: 'POST', url: '/api/customer/test', data: fdx, processData: false, containType: false, dataType: "json"});
console.log(fdx);
document.getElementById('input_month').value = "";
document.getElementById('input_year').value = "";
RequestBlock == true; // разрешаем в глобале запросы
$('html').on('click','.element',function() {
var data = {
RequestHead: {
RequestTarget:'somePhpFunction', // вызываемая функция php, любое имя
RequestType:'Update' // тип
},
RequestData: {
select:'0' // id
}
}
var data = JSON.stringify(data);
var s = {
type:'POST',
url:'lib/CONNECT.php',
data:data,
dataType:'json',
parent:'somePhpFunction'
};
SendData(s); // отправляем данные
});
function SendData(s) {
if (s.type && s.type.length || s.url && s.url.length || s.data && s.data.length || s.dataType && s.dataType.length || s.parent && s.parent.length) {
if (RequestBlock == false) {
console.log('выполняется другой запрос');
} else if (RequestBlock == true) {
RequestBlock = false; // блокируем параллельный запрос, ждем выполнения текущего
$.ajax({
type: s.type,
url: s.url,
data: s.data,
cache: false,
dataType: s.dataType,
timeout: 15000,
success: function(r) {
RequestBlock = true; // для избежания ошибок получения данных не той функцией - блокируем повтороную отправку данных переменной RequestBlock. Теряем ассинхронность, зато упрощаем логику отправки и приема данных
SendSuccess(s, r);
},
error: function(jqXHR, textStatus, errorThrown) {
RequestBlock = true;
if (textStatus === 'timeout' || textStatus === 'abort' || textStatus === 'parsererror') {
console.log('ошибка');
} else if (textStatus === 'error') {
console.log('ошибка');
} else {
SendError(s, r);
}
}
});
}
}
}
function SendSuccess(s, r) {
if (s.parent == 'somePhpFunction') {
RsponseForSomePhpFunction = r; // выносим в глобал уникальную переменную или передаем функции
JsSomePhpFunction(r);
// вызываем функцию пост-обработки
}
}
function SendError(s) {
if (s.parent == 'somePhpFunction') {
console.log('ошибка');
}
}
$RequestParameters = json_decode(file_get_contents("php://input"));
if (!empty($RequestParameters->RequestHead) || !empty($RequestParameters->RequestData)) {
if (!empty($RequestParameters->RequestHead->RequestTarget) || !empty($RequestParameters->RequestHead->RequestType)) {
if ($RequestParameters->RequestHead->RequestTarget == 'somePhpFunction') {
// если надо, можно прямо тут задействовать RequestType
$Result = somePhpFunction($RequestParameters); // вызываем функцию
}
} else {
$Result = array(
'ResponseStatus' => "error",
'ResponseData' => "error: 0002"
);
}
} else {
$Result = array(
'ResponseStatus' => "error",
'ResponseData' => "error: 0001"
);
}
echo json_encode($Result);
<div class="content"></div>
<span class="loadMore">Тырк!</span>
$('html').on('click','.loadMore',function() {
// 1. запрашиваем сервер $.ajax методом
// 2. что-то получаем от сервера, заносим в переменную (если сервер отдает HTML)
$('.content').append('переменная с ответом от сервера'); // 3. вставляем результат
});
$('.element').each(function () {
var CurrentVal = $this.text();
if (CurrentVal == 3) {
console.log('нашли');
}
});
RequestBlock = true; // в глобале разрешаем запрос
if (RequestBlock == false) {
console.log('ничего не делаем');
} else if (RequestBlock == true) {
RequestBlock = false; // блокируем следующий запрос пока не отработает $.ajax
$.ajax({
type: 'POST',
url: 'URL',
data: {},
cache: false,
dataType: 'JSON',
timeout: 15000,
success: function(r) {
RequestBlock = true;
console.log(r);
},
error: function(jqXHR, textStatus, errorThrown) {
RequestBlock = true;
}
});
}
<ifmodule mod_headers.c>
Header always set Access-Control-Allow-Origin: "*"
Header always set Access-Control-Allow-Methods "POST, GET, PUT, DELETE, OPTIONS"
Header always set Access-Control-Allow-Headers "Content-Type, Authorization, X-Requested-With"
Header always set Access-Control-Allow-Credentials "true"
</ifModule>
$(document).on('keydown','body',function(e) {
if (e.which == 44) {
console.log('Тырк!');
} else {
console.log('Не тырк!');
}
});
var data = {
param1: {
0:'val1',
1:'val2'
},
param2: {
0:'val1'
}
};
var data = JSON.stringify(data);
$.ajax({
type: 'POST',
url: 'URL.php',
data: data ,
cache: false,
dataType: 'json',
timeout: 15000,
success: function(request) {
},
error: function(jqXHR, textStatus, errorThrown) {
}
});
$request = json_decode(file_get_contents("php://input"));
echo ($request->param1->0);
<div class="bl"></div>
.bl {
position: fixed;
z-index:999;
top: 50%;
left: 50%;
width: 100px;
height: 100px;
margin: -50px 0 0 -50px;
background-color: black;
}