26

I would like to be able to add custom snippets of javascript to any site that matches a regex. This is mostly because of sites that I use daily because of specialized content, but which have a poor design. I want to be able to do something like:

  • Visit site See that sidebar overwrites content
  • Whip out developer tools, find div id for sidebar
  • Edit a snippet of javascript which is executed on document.ready for this domain:

    $('#sidebar-right').remove();
    

A bit of searching for user scripts tells me that I need to be writing a Chrome extension, which seems unfortunate and overkill. Is there not an easier way, or an extension which is nothing but a javascript editor that assigns snippets to domains? I'd really like to be able to edit in Chrome itself, or at least have a file that I can just leave open in MacVim all the time. An extension requires unloading/installing to update as far as I can tell.

If I just had one big javascript file, that would be fine. I'd just wrap my customizations in domain checks.

Bonus love if I can write in CoffeeScript.

Lin Du
  • 88,126
  • 95
  • 281
  • 483
bhuga
  • 1,292
  • 1
  • 14
  • 24

7 Answers7

18

The answer is to use the Tampermonkey chrome extension.

https://chrome.google.com/webstore/detail/dhdgffkkebhmkfjojejmpbldmpobfkfo

wesleysmyth
  • 4,348
  • 2
  • 17
  • 17
bhuga
  • 1,292
  • 1
  • 14
  • 24
13

Why not dotjs http://defunkt.io/dotjs/ ? It's local, you can version it with git, you can easily take it to another computer...

topek
  • 18,609
  • 3
  • 35
  • 43
6

Another alternative that neatly solves the problem is Custom JavaScript for websites. You just need to install the extension, which takes around 2 seconds, and then you can immediately start typing your custom JavaScript for the specified website.

Custom JavaScript for websites example

The extension automatically recognizes the current website, so all you need to do is write your code and click on Save. You can also easily import jQuery or your external scripts for convenience.

Ivaylo Toskov
  • 3,911
  • 3
  • 32
  • 48
4

Custom JavaScript for Websites 2 is an alternative to Custom JavaScript for Websites, with some bug fixes and sync scripts across devices feature.

xcv58
  • 63
  • 1
  • 5
4

Witchcraft is another Google Chrome extension for loading custom Javascript and CSS, and it is supposedly for more avanced users. The older dotjs project repository lists Witchcraft as its successor.

Witchcraft toolbar menu

Orestis Kapar
  • 129
  • 1
  • 9
3

Snippets are available directly in Chrome Devtools

https://developers.google.com/web/tools/chrome-devtools/javascript/snippets

enter image description here

Jordan
  • 3,813
  • 4
  • 24
  • 33
1

What you're looking for is Greasemonkey. But wait, Greasemonkey is for Firefox only, right? Turns out, you can install Greasemonkey user-scripts as native Chrome add-ons. Just go to userscripts.org and hit the Install button on one of them, and Chrome will automatically convert it into a native add-on. Then, write your own and install it using Chrome.

Note: This only works in Chrome 4.0.

Chetan
  • 46,743
  • 31
  • 106
  • 145
  • Firefox is great for having Greasemonkey, but it's so cool that Chrome supports those user-scripts natively. Much easier to manage them as add-ons than in a separate Greasemonkey interface. – Chetan Aug 24 '11 at 07:10
  • This isn't quite what I want, unfortunately. There's no easy way to edit those in a hurry, or create a new one from scratch. I'm not really interested in community user scripts--this is about personal customization. – bhuga Aug 24 '11 at 15:50
  • 1
    You can make them really quickly (see [this one](http://userscripts.org/scripts/review/12897)), and make a simple HTML file that hosts them, and open them locally. What's so hard about it? – Chetan Aug 25 '11 at 18:48