function getMonthsDiff(d1, d2) {
var months;
months = (d2.getFullYear() - d1.getFullYear()) * 12;
months -= d1.getMonth() + 1;
months += d2.getMonth();
return months <= 0 ? 0 : months;
}, где d1 - начальная дата, d2 - конечная дата. Т.е. now и end.Все современные браузеры, включая IE9+, понимают даты в упрощённом формате ISO 8601 Extended.learn.javascript.ru
Этот формат выглядит так: YYYY-MM-DDTHH:mm:ss.sssZ, где:
YYYY-MM-DD – дата в формате год-месяц-день.
Обычный символ T используется как разделитель.
HH:mm:ss.sss – время: часы-минуты-секунды-миллисекунды.
Часть 'Z' обозначает временную зону – в формате +-hh:mm, либо символ Z, обозначающий UTC. По стандарту её можно не указывать, тогда UTC, но в Safari с этим ошибка, так что лучше указывать всегда.
Также возможны укороченные варианты, например YYYY-MM-DD или YYYY-MM или даже только YYYY.
var end = new Date('2018-12-01T12:00Z');не могу разобраться, когда таймер заканчивает отсчет, блок становится пустым. Как сделать так, чтобы по окончании таймера, в этом блоке появлялся другой блок?
changeCheck нужно в строке var i=el.val(); поменять el на input.min-width для body со значением, достаточным для того, чтобы оба блока вмещались. function debouncer(func, timeout) {
var timeout = timeout || 200;
var timeoutID;
return function () {
var self = this;
clearTimeout(timeoutID);
timeoutID = setTimeout(function() {
func.apply(self, Array.prototype.slice.call(arguments));
}, timeout);
}
}
var text = document.getElementById('text');
window.addEventListener("resize", debouncer(function(e) {
text.innerHTML += 'был изменён размер окна<br/>';
console.log('test');
})); $('#files').on('click', '.closeic', function (e) {
e.preventDefault();
$(this).parent().remove();
});function imports(array, onComplete, onError) {
onComplete('test');
onError('error');
}importsпропущена запятая между членами массива;completeничего не знает о переменной test role, id и class?div, только с более выраженной целью. Про цели каждого тэга можно почитать здесь или сразу в спецификации HTML5. Использовать их или продолжать использовать div - дело твое. Большой ошибки не будет.class и id обычно используются для стилизации элементов при помощи CSS и привязки JS-кода к конкретным элементам. Есть мнение, что id для этого использовать не стоит. В-основном, потому что никогда не знаешь будет ли элемент действительно уникальным или через какое-то время появится его копия.role я никогда не использовал в своей разметке. Отчасти, этот атрибут похож по своей идее на новые тэги HTML5. Можешь прочитать по него тут :) или в спецификации.if ($('.cartmskcountresult').text() === '1') {
location.assign($('.cartlink a').attr('href'));
} <form name="loginForm" ng-submit="submitForm(loginForm)">
<input type="email" ng-model="user.email">
<input type="password" ng-model="user.password">
<button type="submit">Войти</button>
</form>.controller('LoginCtrl', function ($scope, $http) {
$scope.user = {};
$scope.user.customField = 'customValue';
$scope.submitForm = function (form) {
$http.post('path/to/your/url', $scope.user)
.success(function (data) {
console.log('data:', data);
})
.error(function (data) {
console.log('Error:', data);
});
};
});