Custom Style Script
Add Custom JavaScript (JS) Code or Styles (CSS) to any page.
User JavaScript and CSS on any website
Review user movement across collected snapshots.
View collected rating snapshots from the latest 7-day window to assess rating stability.
Compare 1-day, 7-day, and 30-day net growth and growth rate.
Review publication date, version, supported languages, and crawl timestamps.
Review the store description, core capabilities, and common use cases.
Userscript's and userstyle's — simple extension to inject own JavaScript or CSS rules to any page.
Features:
- Instant execution
- Custom libs include
- URL masking allows use one script or CSS on many pages
Documentation:
Inspect the latest comments and rating distribution.
Store average score: 4.8. The bars below are calculated from synced review text only, so they may be empty for extensions that have public ratings but no synced comments yet.
Review related products from the Chrome Web Store detail page.
Add Custom JavaScript (JS) Code or Styles (CSS) to any page.
Inject js on any website Run JavaScript code
Run custom Javascript, each time you visit a website
Copy CSS properties from any web element with CSS Scanly. Supports Tailwind & Bootstrap, Helpful for developers and designers
Disable JavaScript on any site in one click
Global CSS scrollbar. No JavaScript. All CSS.
Clearly the best extension to inject js on pages. Great job !
Не срабатывает (к конкретному свойству) если это свойство в CSS уже содержит !important. Или я что-то не так делаю? P.S. Включение Программного подключения и Автоматического !important не помогает
So nice!!!!
スクリプトだけならTampermonkeyやViolentmonkeyの方が高機能だしCSSだけならStylusの方が高機能。 しかしこの拡張はとにかくシンプルで使いやすくデザインも良いのがお気に入り。 閲覧中のウェブサイトがダークモードに対応してなくて不満だから自由にCSSをカスタムしたい場合。 必要ない要素を非表示にしたいけどコンテンツが動的で、AdblockerやCSSだけでは不可能でスクリプトが必須な場合。 こんな時にサッとJSとCSSをコーディング出来るのが非常に便利。 しかもドメイン指定等も非常にシンプルなので、Violentmonkeyのような複雑さや煩わしさがないのも良い。 そして複数端末との同期もクラウド対応でワンクリックなのも非常に便利である。 なので自作スクリプトやCSSはすべてこちらでコーディングして、他のデベロッパーが開発してくれた高機能・高性能なスクリプトはViolentmonkeyにインストールするという使い分けをしている。 Stylusとの最大の違いは、他の拡張にもCSSを適用したい場合これだと適用できずStylusが必須なのでこちらも使い分けしている。 ただし、もちろんパーフェクトではなくエディタのコード補完が貧弱すぎてコーディングしていてイライラするのも事実。 なのでエディタは今後とも機能追加等のアップデートを続けてほしい、わざわざVSCodeでコーディングしてファイルをローカル保存したりしたくない。 よって期待を込めて★1つマイナス。
I'm really glad to find this extension. It really helps me a lot. Thank you so much for this great one!
Отличное расширение. Добавил несколько js скриптов и css для сайтов, на которых постоянно работаю - всё пашет, как часы. Работать стало намного комфортнее. Огромное спасибо разработчику! Не бросайте, пожалуйста, свой продукт - из всех опробованных он самым удобным оказался, по итогу
Появилась небольшая, но заметная задержка при открытии "Popup" и при переключении вкладок в "Options". (У меня 200+ скриптов, бекап весит больше 2 МБ. На пустом расширении проблем с производительностью нет.) --- Подробнее. "Popup" теперь открывается пустой (без списка скриптов) и в темной теме, и лишь через небольшую задержку он отрисовывается заново в светлой теме со списком скриптом. Раньше он мгновенно отрисовывался со списком скриптом без всяких багов. "Options page" тоже стал медленнее загружаться (задержка есть как при обновлении страницы, так и каждый раз при переключении на вкладку "Rules" или "Extension settings"). Плюс, маленький прямоугольник с текстом RULES тоже сначала отрисовывается в темной теме (хотя это заметно только при нажатии F5). Переключение на вкладку "Extension settings" занимает 150 мс из-за "getZipSize". Переключение на вкладку "Rules" занимает 400 мс (много мелких операций по несколько мс при рендере компонентов Vue). --- Чтобы оптимизировать расширение, стоит просто разбить данные по ключам. Сейчас ключ "rules". Это огромный супер объект (массив) всего и вся: let now = performance.now(); chrome.storage.local.get("rules", obj => {console.log(performance.now() - now, obj);}); ...чтобы его прочесть, тратится 50 мс, т.к. тут парсинг строки на 2+ МБ. Непосредственно пользовательский код JS и CSS нужно вынести в отдельные ключи "storage.local". И обращаться к ним, только когда собственно этот текст будет нужен (для инжекта или для редактора). Кстати, id у правил есть (md5), вот они и пригодятся. Собственно, все. 99 %, что это поможет, как минимум, popup точно будет мгновенно показываться. Т.е: "storage.local" должно выглядеть так: { libs: [...], rules: [...], "code:1234567890abcdef1234567890abcdef": {jsCode, cssCode}, "code:01234567890abcdef1234567890abcde": {jsCode, cssCode}, } Брать {jsCode, cssCode} нужного правила по id, только когда нужно, а не читать весь стор целиком. Например, ViolentMonkey так и хранит данные. Хотя любопытно, что на предыдущей версии (1.2.8) проблем с этим не было. Хотя стор имел схожую организацию. --- id правил, конечно, лучше заменить на инкрементальный (для новых скриптов можно использовать дату создания), чтобы избежать лишнего геммора из-за постоянно меняющегося md5. Заодно можно добавить сортировку по дате создания. --- Также "Intl.Collator()" надо переиспользовать (а не каждый раз вызывать при сортировке), т.к. это тяжелая операция. Это сэкономит несколько десятков мс при сортировке.
Works like a charm. Beautiful interface too 👏
Had to jump in to the webstore, only to write this review. Absoulutely loving the new update! Been using this extension for nearly 4 years now. Brilliant work, keep it up!!
赞,非常好用。非常好用。 Молодец, очень удобно. Great, very easy to use.