almir Опубликовано: мая 13, 2021 Жалоба Поделиться Опубликовано: мая 13, 2021 6 часов назад, BuslikDrev сказал: 2.3.0.2.6 ещё не готово - нужно тестировать. Сам факт появления! Заметил в админке ваши дополнения уже за это респект. Администрация устранилась от сборки я так понимаю? Цитата Ссылка на комментарий Поделиться на других сайтах Больше вариантов поделиться...
BuslikDrev Опубликовано: мая 13, 2021 Автор Жалоба Поделиться Опубликовано: мая 13, 2021 4 часа назад, almir сказал: Администрация устранилась от сборки я так понимаю? Нет, оказывается хотят выпуск. Цитата Ссылка на комментарий Поделиться на других сайтах Больше вариантов поделиться...
BuslikDrev Опубликовано: декабря 24, 2021 Автор Жалоба Поделиться Опубликовано: декабря 24, 2021 30/ Решил я скопировать все стили и отправить на сервер, в ходе работы кода также понадобилось внести изменение в стиль "content" класса иконки. Оказалось, что element.style.setProperty('content', '123') - не вносит моё значение. Позже обнаружил, что вносит только вида element.style.setProperty('content', 'url(123)') В итоге такой фикс подготовки всех стилей перед отправкой на сервер: Скрытый текст <style> body { content: 'blue'; } </style> <script> window.addEventListener('load', function() { var element = document.styleSheets[0].cssRules[0].style; console.log(element.cssText); //element.removeProperty('content'); // working //element.setProperty('content', 'url(red)'); // working element.setProperty('content', 'red'); // does not work element.setProperty('color', 'red'); // working console.log(element.cssText); console.log(1 + ' ' + element.getPropertyValue('content')); /* fix */ element.setProperty('content', 'url(fixredfix)'); element.cssText = element.cssText.replace(/\burl\(\"fix(.[^\)]*?)fix\"\)/, '"$1"'); /* fix */ console.log(element.cssText); console.log(2 + ' ' + element.getPropertyValue('content')); }); </script> Цитата Ссылка на комментарий Поделиться на других сайтах Больше вариантов поделиться...
BuslikDrev Опубликовано: марта 29, 2022 Автор Жалоба Поделиться Опубликовано: марта 29, 2022 31/ Рекомендую писать js код с правилом строгой типизации: "use strict"; "use asm"; Это научит вас писать оптимизированный код, а в случае "use asm" поддерживающие браузеры этого правила будут выполнять ваш код быстрее. Также рекомендую ознакомиться с возможностями WebAssembly (wasm). Эта технология позволяет выполнять код C, C++, C#, Rust (нужно конвертировать через спец. программы в wasm), что выходит быстрее, если бы вы написали такой код на JavaScript. То есть полезно создать свой модуль wasm с функциями для выполнения каких-то вычислений (работа с изображениями и видео, кодирование и декодирование информации). Онлайн конвертёр из Си в Wasm Онлайн конвертёр из С++ в Wasm 32/ Универсальный анкор скролл Скрытый текст 'use strict'; 'use asm'; if (typeof document.documentElement.style['scroll-behavior'] !== 'undefined') { document.documentElement.style['scroll-behavior'] = 'none'; window.addEventListener('load', function(e) { document.documentElement.style['scroll-behavior'] = 'smooth'; }); } else { if (!('scrollIntoView' in window)) { (function() { var lastTime, vendors, x; lastTime = 0; vendors = ['ms', 'moz', 'webkit', 'o']; for (x = 0; x < vendors.length && !window.requestAnimationFrame; ++x) { window.requestAnimationFrame = window[vendors[x]+'RequestAnimationFrame']; window.cancelAnimationFrame = window[vendors[x]+'CancelAnimationFrame'] || window[vendors[x]+'CancelRequestAnimationFrame']; } if (!window.requestAnimationFrame) { window.requestAnimationFrame = function(callback, element) { var currTime = new Date().getTime(); var timeToCall = Math.max(0, 16 - (currTime - lastTime)); var id = window.setTimeout(function() { callback(currTime + timeToCall); }, timeToCall); lastTime = currTime + timeToCall; return id; }; } if (!window.cancelAnimationFrame) { window.cancelAnimationFrame = function(id) { clearTimeout(id); }; } }()); var s, ss; s = document.createElement('script'); s.async = true; s.type = 'text/javascript'; s.src = 'http://iamdustan.com/smoothscroll/src/smoothscroll.js'; ss = document.getElementsByTagName('head')[0]; ss.parentNode.appendChild(s); } var element = document.querySelectorAll('a[href*="#"]'); if (element) { var i, l, t, link; i = 0; l = element.length; for (i; i < l; i++) { element[i].addEventListener('click', function(e) { t = e.target; if (typeof t.hash === 'undefined') { t = t.parentNode; } if (window.location.pathname.replace(/^\//,'') == t.pathname.replace(/^\//,'') && window.location.hostname == t.hostname) { if (typeof t.hash !== 'undefined') { e.preventDefault(); link = document.getElementById(t.hash.substring(t.hash.length - (t.hash.length-1))); if (link) { console.log(link); link.scrollIntoView({ behavior: "smooth" }); } } } }); } } } Цитата Ссылка на комментарий Поделиться на других сайтах Больше вариантов поделиться...
Ярослав Фадеев Опубликовано: апреля 5, 2022 Жалоба Поделиться Опубликовано: апреля 5, 2022 Спасибо вам за полезные советы ? Цитата Ссылка на комментарий Поделиться на других сайтах Больше вариантов поделиться...
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете опубликовать сейчас и зарегистрироваться позже. Если у вас есть учётная запись, войдите, чтобы публиковать под своей учётной записью.