// ...
var processing = false; // флаг
$controls.on('change', function() {
if (processing) return; // если флаг есть, то выходим из обработчика
processing = true; // устанавливаем флаг
startLoadingAnimation();
$.post("/engine/ajax/filter.php", $("#filter").serialize(), function(response) {
processing = true; // снимаем флаг как только пришел ответ от сервера
setTimeout(function() {
$('#dle-content').html(response);
stopLoadingAnimation();
// или в этом месте (в зависимости от задачи)
}, 3000);
});
});
// ...
function getCursorPosition(event, svgElement) {
var svgPoint = svgElement.createSVGPoint();
svgPoint.x = event.clientX;
svgPoint.y = event.clientY;
return svgPoint.matrixTransform(svgElement.getScreenCTM().inverse());
}
// пример использования
var svg = document.querySelector('svg');
svg.addEventListener('mousemove', function(e) {
var cursor = getCursorPosition(e, svg);
console.log(cursor);
}, false);
$server_url_path = array(
"id" => array(
"qwester",
"client_number_id",
"client_settings"
),
"contact"
);
foreach ($server_url_path as $val) {
if (in_array($url_path5, $val)) {
echo "got some!";
}
}
document.addEventListener('DOMContentLoaded', function(event) {
var elem = null;
if (window.matchMedia("(min-width: 640px)").matches) {
elem = document.querySelector('div.show_map');
elem.parentNode.removeChild(elem);
}
});
$(document).on('click', 'a[data-group="some_group"]', function(e) {
// ...
});
$('.' + rootClass).on('click', 'a', function(e) {
// ...
});