Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Bookmarklet
(section)
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== History == Steve Kangas of bookmarklets.com coined the word ''bookmarklet''<ref name="bookmarklets.com">{{cite web |url=http://www.bookmarklets.com |title=Bookmarklets |archive-url=https://web.archive.org/web/20090707090113/http://www.bookmarklets.com/ |archive-date=2009-07-07 |url-status=live}} registered 9 April 1998</ref> when he started to create short scripts based on a suggestion in [[Netscape Communications Corporation|Netscape's]] JavaScript guide.<ref>{{cite web|title=Activating JavaScript Commands From the Personal Toolbar|url=http://developer.netscape.com/docs/manuals/communicator/jsguide/misc.htm#1005712|work=What's New in JavaScript 1.2|publisher=Netscape Communications Corporation|archive-url=https://web.archive.org/web/20020611183734/http://developer.netscape.com/docs/manuals/communicator/jsguide/misc.htm#1005712|archive-date=2002-06-11 <!-- 183734 --> |year=1997}}</ref> Before that, [[Tantek Γelik]] called these scripts ''favelets'' and used that word as early as on 6 September 2001 (personal email{{clarify|date=April 2020}}). [[Brendan Eich]], who developed JavaScript at Netscape, gave this account of the origin of bookmarklets: {{quote|They were a deliberate feature in this sense: I invented the <code>javascript:</code> URL along with JavaScript in 1995, and intended that <code>javascript:</code> URLs could be used as any other kind of URL, including being bookmark-able. In particular, I made it possible to generate a new document by loading, e.g. <code>javascript:'hello, world'</code>, but also (key for bookmarklets) to run arbitrary script against the [[Document Object Model|DOM]] of the current document, e.g. <code>javascript:alert(document.links[0].href)</code>. The difference is that the latter kind of URL uses an expression that evaluates to the undefined type in JS. I added the void operator to JS before Netscape 2 shipped to make it easy to discard any non-undefined value in a <code>javascript:</code> URL.|Brendan Eich|3=in an email to [[Simon Willison]]<ref>{{cite web |url=http://www.sitepoint.com/bookmarklets/#comment-1146713851 |title=Email from Brendan Eich |publisher=[[SitePoint]] |last=Willison |first=Simon |date=April 10, 2004 |access-date=September 26, 2014}}</ref>}} The increased implementation of [[Content Security Policy]] (CSP) in websites has caused problems with bookmarklet execution and usage (2013-2015),<ref>{{cite web|title=Bug 866522 - Bookmarklets affected by CSP|url=https://bugzilla.mozilla.org/show_bug.cgi?id=866522}}</ref> with some suggesting that this hails the end or death of bookmarklets.<ref>{{cite web|title=Bookmarklets are Dead|date=23 October 2014|url=https://medium.com/making-instapaper/bookmarklets-are-dead-d470d4bbb626}}</ref><ref>{{cite web|title=The Slow Death of Bookmarklets|date=16 November 2012|url=http://www.codeproject.com/Articles/494559/The-Slow-Death-of-Bookmarklets}}</ref> William Donnelly created a work-around solution for this problem (in the specific instance of loading, referencing and using JavaScript library code) in early 2015 using a [[Greasemonkey]] userscript ([[Firefox]] / [[Pale Moon (web browser)|Pale Moon]] browser add-on extension) and a simple bookmarklet-userscript [[communication protocol]].<ref>{{cite web|title=The Resurrection of Bookmarklets|url=http://www.donnelly-house.net/programming/js/bookmarklets/bookmarklets.php}}</ref> It allows (library-based) bookmarklets to be executed on any and all websites, including those using CSP and having an https:// URI scheme. Note, however, that if/when browsers support disabling/disallowing inline script execution using CSP, and if/when websites begin to implement that feature, it will "break" this "fix".
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Search
Search
Editing
Bookmarklet
(section)
Add topic