2011-01-26 39 views
2

我搜索了四周,但無法找到答案。JQuery生成的小書籤不在某些網站上運行

我已經使用了優秀的書籤教程http://www.smashingmagazine.com/2010/05/23/make-your-own-bookmarklets-with-jquery/,它展示瞭如何使用JQuery來引發iframe。它在當前頁面附加一個塊,檢查JQuery,然後使用jQuery命令觸發一個iframe。它工作出色,但我發生在posterous.com上,它不工作。爲了演示,請進入教程(http://www.smashingmagazine.com/2010/05/23/make-your-own-bookmarklets-with-jquery/),找到「WikiFrame」書籤(關於在頁面的一半位置),將其拖動到瀏覽器工具欄,然後通過選擇一些文本並單擊書籤在另一個站點上嘗試。它很好用 - 它彈出維基百科頁面的iframe。

但是,在posterous.com上,它什麼都不做。腳本塊被添加到頁面中,但不會觸發。

任何有關爲什麼的想法?

回答

2

該教程的wikiframe小書籤中存在一個錯誤。

它測試以查看jQuery對象是否存在,但接着使用$。在posterous.com上,$不等於jQuery。

if (typeof jQuery == 'undefined') { 
     //... 
} else { 
     runthis(); 
} 

function runthis() { 
    if ($("#wikiframe").length == 0) { 
      //... 

的解決方案是使用而不是$ jQuery的,或別名$ jQuery的使用類似

(function($){ ... })(jQuery) 
+0

真棒,謝謝atnnn,我應該自己發現的!再次感謝 – pinksy 2011-01-26 23:09:45