Bookmarklet实现启动jQuery(模仿 云输入法)


Posted in Javascript onSeptember 15, 2010

书签本来是用来收藏 网址(http://momo.site.com/), 但实际上书签还可以收藏 javascript代码
只要把书签中的地址url, 换成javascript代码就可以了。

javascript:your_javascript_expression

上面的 javascript : 可以认为是javascript协议, 就像http: 是http协议一样。
下面是 启动jQuery 书签的地址:
javascript:( 
function(jquery_node){ 
var disable = function(src_node) { 
src_node.parentNode.removeChild(src_node); 
jQuery.noConflict(1); 
}; 
var enable = function(d,j){ 
j=d.createElement('script'); 
j.id='jquery_src_code'; 
j.src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js'; 
d.getElementsByTagName('head')[0].appendChild(j); 
}; 
!!jquery_node ? disable(jquery_node) 
: enable(document); 
})(document.getElementById('jquery_src_code'))

为了在网页上可以让用户收藏,你需要把它放入一个<a>链接中。
比如:
<a href="javascript:your_js_code" title="启动jQuery"><span>启动jQuery</span></a>

全部的代码是:
<a class="how-to-install" id="bookmarklet" title="启动jQuery" 
href=" 
javascript:( 
function(jquery_node){ 
var disable = function(src_node) { 
src_node.parentNode.removeChild(src_node); 
jQuery.noConflict(1); 
}; 
var enable = function(d,j){ 
j=d.createElement('script'); 
j.id='jquery_src_code'; 
j.src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js'; 
d.getElementsByTagName('head')[0].appendChild(j); 
}; 
!!jquery_node ? disable(jquery_node) 
: enable(document); 
})(document.getElementById('jquery_src_code'))"> 
<span>启动jQuery</span> </a>

结果如下:
启动jQuery
你可以收藏上面的书签了 (右键,点击 "将此链接加为书签");
FireBug---》 Console ,试试 jQuery的魅力吧.
jQuery('a');
$('a') 可能会失效,因为可能一开始就有 window.$对象(包含了别的js库,或网站自己定义了$对象)
cnblogs 的网站就使用jQuery库。
Javascript 相关文章推荐
Js日期选择自动填充到输入框(界面漂亮兼容火狐)
Aug 02 Javascript
判断输入是否为空,获得输入类型的JS代码
Oct 30 Javascript
jQuery中使用Ajax获取JSON格式数据示例代码
Nov 26 Javascript
探讨jQuery的ajax使用场景(c#)
Dec 03 Javascript
javascript设计模式之module(模块)模式
Aug 19 Javascript
微信小程序中页面FOR循环和嵌套循环
Jun 21 Javascript
react中的ajax封装实例详解
Oct 17 Javascript
Js利用prototype自定义数组方法示例
Oct 20 Javascript
浅谈如何通过node.js对数据进行MD5加密
May 16 Javascript
JS实现键值对遍历json数组功能示例
May 30 Javascript
详解浏览器缓存和webpack缓存配置
Jul 06 Javascript
node后端服务保活的实现
Nov 10 Javascript
基于jQuery的淡入淡出可自动切换的幻灯插件打包下载
Sep 15 #Javascript
基于JQuery的简单实现折叠菜单代码
Sep 15 #Javascript
jQuery获取css z-index在各种浏览器中的返回值
Sep 15 #Javascript
JavaScript具有类似Lambda表达式编程能力的代码(改进版)
Sep 14 #Javascript
手把手教你自己写一个js表单验证框架的方法
Sep 14 #Javascript
(jQuery,mootools,dojo)使用适合自己的编程别名命名
Sep 14 #Javascript
修改jquery里的dialog对话框插件为框架页(iframe) 的方法
Sep 14 #Javascript
You might like
win2003服务器使用WPS的COM组件的一些问题解决方法
2012/01/11 PHP
基于PHP对XML的操作详解
2013/06/07 PHP
解析PHP中的file_get_contents获取远程页面乱码的问题
2013/06/25 PHP
php将session放入memcached的设置方法
2014/02/14 PHP
微信支付开发告警通知实例
2016/07/12 PHP
在JavaScript中,为什么要尽可能使用局部变量?
2009/04/06 Javascript
Jquery跨域获得Json时invalid label错误的解决办法
2011/01/11 Javascript
javascript实现playfair和hill密码算法
2014/12/07 Javascript
jQuery中[attribute^=value]选择器用法实例
2014/12/31 Javascript
不得不分享的JavaScript常用方法函数集(上)
2015/12/23 Javascript
JavaScript基本类型值-Number类型
2017/02/24 Javascript
nodejs个人博客开发第一步 准备工作
2017/04/12 NodeJs
vue 2.0路由之路由嵌套示例详解
2017/05/08 Javascript
深入理解ES6学习笔记之块级作用域绑定
2017/08/19 Javascript
微信小程序实现简单跑马灯效果
2020/05/26 Javascript
详解如何在Vue项目中导出Excel
2019/04/19 Javascript
JavaScript模块管理的简单实现方式详解
2019/06/15 Javascript
Nodejs文件上传、监听上传进度的代码
2020/03/27 NodeJs
js 执行上下文和作用域的相关总结
2021/02/08 Javascript
[01:18]PWL开团时刻DAY10——一拳超人
2020/11/11 DOTA
Python爬虫DNS解析缓存方法实例分析
2017/06/02 Python
python将文本中的空格替换为换行的方法
2018/03/19 Python
Python中利用xpath解析HTML的方法
2018/05/14 Python
python面向对象多线程爬虫爬取搜狐页面的实例代码
2018/05/31 Python
深度辨析Python的eval()与exec()的方法
2019/03/26 Python
Manjaro、pip、conda更换国内源的方法
2020/11/17 Python
泰海淘:泰国king Power王权免税集团旗下跨境海淘综合型电商
2020/07/26 全球购物
竞争上岗演讲稿
2014/01/05 职场文书
担保书格式及范文
2014/04/01 职场文书
优秀护士先进事迹
2014/05/08 职场文书
党员学习党的群众路线思想汇报(5篇)
2014/09/10 职场文书
工商局副局长个人对照检查材料
2014/09/25 职场文书
家长会开场白和结束语
2015/05/29 职场文书
祝福语集锦:给百岁老人祝寿贺词
2019/11/19 职场文书
Vue3.0写自定义指令的简单步骤记录
2021/06/27 Vue.js
Python Django / Flask如何使用Elasticsearch
2022/04/19 Python