我四处寻找,但找不到答案。
我在http://www.smashingmagazine.com/2010/05/23/make-your-own-bookmarklets-with-jquery/使用了优秀的bookmarklet教程,该教程展示了如何使用JQuery来抛出iframe。它将一个块附加到当前页面,检查JQuery,然后使用jQuery命令触发iframe。它的工作非常出色,但我遇到了posterous.com,它无法正常工作。
要演示,请转到教程(http://www.smashingmagazine.com/2010/05/23/make-your-own-bookmarklets-with-jquery/),找到“WikiFrame”书签(大约一半)在页面下方),将其拖到浏览器工具栏,然后通过选择一些文本并单击书签在另一个站点上尝试。它很棒 - 它会弹出维基百科页面的iframe。
然而,在posterous.com上,它什么也没做。脚本块被添加到页面中,但它不会启动。
有人为什么会这么想?
答案 0 :(得分:2)
该教程的wikiframe bookmarklet中存在一个错误。
它测试jQuery对象是否存在,然后继续使用$。在posterous.com上,$不等于jQuery。
if (typeof jQuery == 'undefined') {
//...
} else {
runthis();
}
function runthis() {
if ($("#wikiframe").length == 0) {
//...
解决方案是使用jQuery而不是$,或使用类似
之类的别名$ jQuery(function($){ ... })(jQuery)