(☞ຈل͜ຈ)☞ Главная  Статьи  Загрузчик Домой

Ok!
Ok!
257
<script>
$(document).ready(function(){
    $('<script/>',{type:'text/javascript', src:'https://w561931.yclients.com/widgetJS'}).appendTo('head');
}); 
</script>
js, document.ready, load script450Загрузить js скрипт после загрузки страницы
254
document.addEventListener("DOMContentLoaded", ()=>{
	document.querySelector("#get_data_by_inn").addEventListener("click", ()=> {


		(async function get_jur_data() {
			let url = "https://' . $_SERVER['HTTP_HOST'] .'/test/inn.json";
			

			fetch(url, {
				headers: {
					Authentication: "secret"
				}})
				.then((response) => {
					return response.json();
				})
				.then((data) => {
					console.log(data);
				});


		})()
	});
});
json, fetch, js670Запрос json через javascript
247
function loadImages(block) {
  Array.from(block.querySelectorAll('img[data-src]')).forEach(function (img, i) {
    let _img = new Image,
        _src = img.getAttribute('data-src');
    let wrap = img.closest('.is-loader');
    _img.onload = function () {
      img.src = _src;
      img.classList.add('is-loaded');
      if (wrap.length > 0) wrap.classList.remove('is-loader');
    }
    if (img.src !== _src) _img.src = _src;
  });
}
изображения, загрузка, load, js3000Загрузка картинок с атрибутом data-src
246
JSON_UNESCAPED_UNICODE => 256
unicode, json, php240Числовое представление константы JSON_UNESCAPED_UNICODE
242
use BitrixMainPageAsset;
use BitrixMainPageAssetLocation;
Asset::getInstance()->addString("<script>***</script>", true, AssetLocation::AFTER_JS);
// AssetLocation::BEFORE_CSS;
// AssetLocation::AFTER_CSS;
// AssetLocation::AFTER_JS_KERNEL
// AssetLocation::AFTER_JS
head, js, css, d710980Вставка ссылок в head Битрикс
241
let dano = $('[name=ORDER_PROP_20]').val(); // 19.03.2023
let dateEn = new Date(dano.substr(6,4), dano.substr(4,2) - 1, dano.substr(0,2), 0, 0, 0).toLocaleDateString('en-CA'); // 2023-03-19
date, JS, convert200Конвертация импортной даты в русскую
240
document.addEventListener("DOMContentLoaded", function (event) {
    setTimeout(function() {
    
        let container = document.createElement("div");
        container.classList.add('g-recaptcha');
        container.setAttribute('id', 'g-recaptcha');
        container.dataset.sitekey = '6Lc-rR0nAAAAAApbMeAGotqehDQZrx7IeUrAajI2';
    
    
        let prev = document.querySelector('[name="form_hidden_45"]');
        prev.after(container);
    },0);
});
JS, javascript, captcha120Добавить блок Капча после поля формы Яваскрипт
228
new Date().toLocaleString('en-CA').substr(0,10)
дата, JS, date100Дата в Javascript ГГГГ-ММ-ДД
227
const numbers = [1, 2, 3];
const doubled = numbers.map(x => x * 2); // [2, 4, 6]
map, js19800Метод map в javascript
226
var player = {score: 1, name: 'Jeff'};
var newPlayer = Object.assign({}, player, {score: 2}); 
// or var newPlayer = {...player, score: 2};

create new object, js100300Создать новый объект из старого в Javascript
218
function loadScript(url, callback) { 
  const element = document.createElement("script"); 
  element.type = "text/javascript"; 
  element.src = url; 
  element.onload = callback; 
  document.body.appendChild(element); 
}

loadScript("js/common.js", () => {
loadScript("<https://cdn.jsdelivr.net/npm/[email protected]/build/global/luxon.min.js>",
() => {
console.log("timer.js ")
})
})
loadscript, js1200Скрипт чтоб загрузить другой скрипт
212
$(document).ready(function(){
        
    let tilDate = new Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate() + 5);    
    let tilDay = new Date(tilDate).getDate();
    let monthNames = [ "января", "февраля", "марта", "апреля", "мая", "июня", "июля", "августа", "сентября", "октября", "ноября", "декабря" ];
    

    if($('[field="tn_text_1655377664248"]').length){
    new_text = tilDay + " " + monthNames[tilDate.getMonth()];
    $('[field="tn_text_1655377664248"] span').text(new_text);
    }

});
5 дней, JS20010Добавит 5 дней
211
let worker = {
  slow(min, max) {
    alert(`Called with ${min},${max}`);
    return min + max;
  }
};

function cachingDecorator(func, hash) {
  let cache = new Map();
  return function() {
    let key = hash(arguments); // (*)
    if (cache.has(key)) {
      return cache.get(key);
    }

    let result = func.call(this, ...arguments); // (**)

    cache.set(key, result);
    return result;
  };
}

function hash(args) {
  return args[0] + ',' + args[1];
}

worker.slow = cachingDecorator(worker.slow, hash);

alert( worker.slow(3, 5) ); // работает
alert( "Again " + worker.slow(3, 5) ); // аналогично (из кеша)
caching decorator, js24600Кеширующая js функция
206
const add = (a) => (b) => a + b;
console.log (add(3)(2))
js, двойная функция100Пример двойной функции в Яваскрипт
204
var p1 = Promise.resolve(3);
var p2 = 1337;
var p3 = new Promise((resolve, reject) => {
  setTimeout(resolve, 100, "foo");
});

Promise.all([p1, p2, p3]).then(values => {
  console.log(values);
});
Promise, JS10900Промис яваскрипт
203
/^([a-z0-9_.-]+)@([a-z0-9_.-]+).([a-z.]{2,6})$/
regexp, email. JS14800Регулярное выражение для проверки email
202
/^(https?://)?([da-z.-]+).([a-z.]{2,6})([/w .-]*)*/?$/
regexp, url, JS1300Регулярное выражение для проверки URL
201
function send(onError, onSuccess, url, method = 'GET', data = null, headers = [], timeout = 60000) {
  let xhr;

  if (window.XMLHttpRequest) {
      // Chrome, Mozilla, Opera, Safari
      xhr = new XMLHttpRequest();
  }  else if (window.ActiveXObject) { 
      // Internet Explorer
      xhr = new ActiveXObject("Microsoft.XMLHTTP");
  }

  xhr.open(method, url, true);


  headers.forEach((header) => {
      xhr.setRequestHeader(header.key, header.value);
  })
  

  xhr.timeout = timeout;

  xhr.onreadystatechange = function () {
      if (xhr.readyState === 4) {
      if(xhr.status >= 400) {
          onError(xhr.statusText)
      } else {
          onSuccess(xhr.responseText)
      }
      }
  }

  xhr.send(data);
}
xhr, request, XMLHttpRequest, JS12090XMLHttpRequest обернутый в функцию
197
let d = new Date(); let m = String(d.getMonth() + 1).padStart(2, '0');
js,javascript,month with 0,month with zero340В яваскрипте получить месяц номер с ведущим нулём
190
<script>
$(document).ready(function(){

    function getRemanningDays() {
        var date = new Date();
        var time = new Date(date.getTime());
        time.setMonth(date.getMonth() + 1);
        time.setDate(0);
        var days = time.getDate() > date.getDate() ? time.getDate() - date.getDate() : 0;
        return days;
    }



    setInterval(function(){

        let dateNow = new Date();
        let lastDate = new Date(new Date().getFullYear(), new Date().getMonth() + 2, 0).getDate();
        let mon = dateNow.getMonth();

        let monthNames = [ "января", "февраля", "марта", "апреля", "мая", "июня", "июля", "августа", "сентября", "октября", "ноября", "декабря" ];


        if($('[field="tn_text_1620984661425"]').length){
        let text = $('[field="tn_text_1620984661425"]').text();
        let part = text.substr(18);
        let now = new Date();
        let new_text = 'Акция действует до ';
        if(getRemanningDays() < 15){
            new_text = new_text + lastDate + " " + monthNames[dateNow.getMonth() + 1];
            $('[field="tn_text_1620984661425"]').text(new_text);
        }
    }
    }, 1000);

})
</script>
до конча месяца, изменить дату, js200Акция если до конца месяца менее 10 дней, то акция продляется до конца следующего месяца
188
var hr = $('body').find('.popup_image')
hr.each(function(){
    console.log($(this).attr('href') + ' ' + $(this).attr('title'));
})
парсинг js100Парсинг ссылок яваскриптом
166
<script>
    document.addEventListener("touchstart", function(e) {
        console.log(e.defaultPrevented);  // will be false
        e.preventDefault();   // does nothing since the listener is passive
        console.log(e.defaultPrevented);  // still false
    }, Modernizr.passiveeventlisteners ? {passive: true} : false);
</script>
touchstart,passive,js100Пассивный ивент листнер
138
var dayArr1 = $('.order-form input[name="user_f_9_2"]').val().split('.');
        var dFor1 = dayArr1[1] + '-' + dayArr1[0] + '-' + '20' + dayArr1[2];
covert date, js date9800Конвертировать дату в яваскрипт формат
137
if ($('#phone_inp').val().length){
var ph = $('#phone_inp').val().replace(/[^0-9.]/g, "");
if(ph.length == 11) {
телефон, цифры, digits, phone number, js130Проверка телефона на число заполненных цифр
126
document.URL.split('/')[document.URL.split('/').length - 2]
url, js, last folder, последняя папка, яваскрипт120js найти последнюю папку в УРЛ
63
if($("[name=form_text_21]").val().replace(/D+/g, '').length == 11)
js,javascript,phone,длина телефона, число цифр в номере телефона1300Проверка числа цифр в номере телефона яваскрипт
56
time = new Date().getHours() + ":"  + new Date().getMinutes()
время, яваскрипт, время сейчас, js, time now, time90Время сейчас — часы : минуты
55
var d = date_form.replace(/(d+)-(d+)-(d+)/, '$3.$2.$1')
дата, конверт, яваскрипт, дата по-русски, convert, javascript, js, date lat to rus250Яваскрипт преобразование (конверт) даты евро в русскую "2018-08-15" в "15.08.2018"
54
//Если с английского на русский, то передаём вторым параметром true.
						var transliterate = (
							function() {
								var
									rus = "щ   ш  ч  ц  ю  я  ё  ж  ъ  ы  э  а б в г д е з и й к л м н о п р с т у ф х ь".split(/ +/g),
									eng = "shh sh ch cz yu ya yo zh `` y e a b v g d e z i j k l m n o p r s t u f x ``".split(/ +/g);
								return function(text, engToRus) {
									var x;
									for(x = 0; x < rus.length; x++) {
										text = text.split(engToRus ? eng[x] : rus[x]).join(engToRus ? rus[x] : eng[x]);
										text = text.split(engToRus ? eng[x].toUpperCase() : rus[x].toUpperCase()).join(engToRus ? rus[x].toUpperCase() : eng[x].toUpperCase());
									}
									return text;
								}
							}
						)();
транслит, translit, латинский-русский, lat-cyr, javascript, js350Транслитерация с английского в русский Яваскрипт
50
<script>
jQuery('.order-form-submit').click(function send_order(){
gtag('event', 'purchase', {
  "transaction_id": <?=rand(1,1000)?>,
  "affiliation": "La Maree Buy",
  "value": {TOVAR_SUM},
  "currency": "RUR",
  "tax": 1.18,
  "shipping": 350,
  "items": <?=json_encode( $GLOBALS['item'], JSON_UNESCAPED_UNICODE ); ?>
});
});
</script>
gtag, js, аналитика, purchase4899Скрипт добавки товара в Аналитику gtag js
48
json_encode($arr, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES);
json, json_encode, utf-8 символы450Кодировать в json без преобразования кириллических символов и слэш
27
<?php 
 function Escape_win ($path) { 
 $path = strtoupper ($path); 
 return strtr($path, array("U0430"=>"а", "U0431"=>"б", "U0432"=>"в", 
 "U0433"=>"г", "U0434"=>"д", "U0435"=>"е", "U0451"=>"ё", "U0436"=>"ж", "U0437"=>"з", "U0438"=>"и", 
 "U0439"=>"й", "U043A"=>"к", "U043B"=>"л", "U043C"=>"м", "U043D"=>"н", "U043E"=>"о", "U043F"=>"п", 
 "U0440"=>"р", "U0441"=>"с", "U0442"=>"т", "U0443"=>"у", "U0444"=>"ф", "U0445"=>"х", "U0446"=>"ц", 
 "U0447"=>"ч", "U0448"=>"ш", "U0449"=>"щ", "U044A"=>"ъ", "U044B"=>"ы", "U044C"=>"ь", "U044D"=>"э", 
 "U044E"=>"ю", "U044F"=>"я", "U0410"=>"А", "U0411"=>"Б", "U0412"=>"В", "U0413"=>"Г", "U0414"=>"Д", 
 "U0415"=>"Е", "U0401"=>"Ё", "U0416"=>"Ж", "U0417"=>"З", "U0418"=>"И", "U0419"=>"Й", "U041A"=>"К", 
 "U041B"=>"Л", "U041C"=>"М", "U041D"=>"Н", "U041E"=>"О", "U041F"=>"П", "U0420"=>"Р", "U0421"=>"С", 
 "U0422"=>"Т", "U0423"=>"У", "U0424"=>"Ф", "U0425"=>"Х", "U0426"=>"Ц", "U0427"=>"Ч", "U0428"=>"Ш", 
 "U0429"=>"Щ", "U042A"=>"Ъ", "U042B"=>"Ы", "U042C"=>"Ь", "U042D"=>"Э", "U042E"=>"Ю", "U042F"=>"Я")); 
 } 
 
$str = "u0430u043fu044bu0443u043au0435u043f "; 
print Escape_win ($str); 
?>
json, decode1030Преобразовать в русскоязычные символы