Bare Bookmarklet Example
Drag the link below into your bookmark bar.
FvB BareGenerating this bookmarklet
rails g easymarklet:bare fvb_bare
You'll get a bare shell of a bookmarklet.
app/assets/javascripts/fvb_bare_bookmarklet.js
(function(){
// Your bare bookmarklet code goes here.
})();
Update the code
Then we just add a little bit of code to grab the current URL and send it back to our app.
Note : This code is designed to allow you to test your bookmarklets in various different environments. You could potentially simplify it by just hardcoding your destination URL.
To make the environment friendly magic work, we need to include the erb processor on the js.
mv app/assets/javascripts/fvb_bare_bookmarklet.js app/assets/javascripts/fvb_bare_bookmarklet.js.erb
(function(){
// Your bare bookmarklet code goes here.
var protocol = 'http://'
var host = '<%= Rails.application.config.action_controller.default_url_options[:host] %>';
var port = '<%= Rails.application.config.action_controller.default_url_options[:port] %>';
port = port === '' ? '' : ':' + port;
var full_host = protocol + host + port;
document.location = full_host + "/pages/new?url=" + encodeURIComponent(document.location)
})();
Link to the bookmarklet
The easymarklet_js
helper function makes it easy to link to your bookmarklet in a template.
<%= link_to 'FvB Bare', easymarklet_js('fvb_bare_bookmarklet.js') %>