(function () {
'use strict';
var selector = {
$button: document.querySelector('a'),
$one: document.querySelector('.one'),
$two: document.querySelector('.two')
};
selector.$button.addEventListener('click', function (event) {
event.preventDefault();
if (isHidden(selector.$one)) {
changeDisplay(selector.$one, 'block');
changeDisplay(selector.$two, 'none');
} else {
changeDisplay(selector.$one, 'none');
changeDisplay(selector.$two, 'block');
}
});
function changeDisplay($node, value) {
$node.style.display = value;
return $node;
}
function isHidden($node) {
return window.getComputedStyle($node).display === 'none';
}
}());
(function ($) {
'use strict';
$(document).on('ajaxComplete', function (event, jqXHR, params) {
if (params && params.url) {
jqXHR.done(function (data) {
console.log({
url: params.url,
response: data
});
});
}
});
}(jQuery));
$(selector).on('click touch', function () { ... });
(function () {
'use strict';
const myTab = function (selector, options) {
const setting = Object.assign({
// параметры по умолчанию
}, options || {});
// код логики табов
};
// Цепляем функцию плагина на глобальный объект
window.myTab = myTab;
}());
//> Инициализируем плагин
window.myTab('.my-tab-selector', {
active: 'active-item',
content: 'tab-item-content',
tabs: '.tabs',
onChange: function (tab) {
console.log('Таб переключили')
}
});
// Клик на кнопку "Отследить"
$('#trackBtn').on('click', function (event) {
event.stopPropagation();
// Ищем iframe виджета и ждем когда он загрузится
$('#YQContainer').find('iframe').on('load', function () {
// Скрываем нужный блок в iframe
$(this).contents().find('.tracklist-da').hide();
});
});
<div class="entry">
<h1>{{title}}</h1>
<div class="body">
{{body}}
</div>
</div>
<script>
template(document.querySelector('.entry'), {
title: 'Lorem ipsum dolor sit amet.',
body: 'Lorem ipsum dolor sit amet, consectetur adipisicing elit. Eos, optio.'
});
function template(node, data) {
node.innerHTML = tag(node.innerHTML, data);
}
function tag(input, data) {
for (var key in data) {
input = input.replace(new RegExp('{{'+ key +'}}', 'g'), data[key]);
}
return input;
}
</script>
// jQuery
$('body').css('background-color')
// Plain JS
getComputedStyle(document.body)['background-color']