Bookmarklet实现启动jQuery(模仿 云输入法) |
书签本来是用来收藏 网址(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库 。 |