2011-10-09 58 views
1

我真的很希望有人能解釋我爲什麼打錯了。 我懷疑我不明白一些基本的東西,並希望我能在這裏學到一些東西。爲什麼在一個js文件中創建的函數在被調用時甚至在另一個js文件中創建時都不起作用?

你可以看到它在這裏沒有工作:http://syndex.me

我評論過的腳本中的相關部分,使其易於 發現。

我有一個圖像縮放腳本,從而降低圖像如果圖像越大則該窗口的高度。它的工作原理最初加載,但任何圖像上沒有我的無限滾動的腳本帶來了新加載的帖子 - >http://marckremers.com/syndex/js/jquery.syndex.js

它使用「每個」和內,「.load」 「.load」不會冒泡DOM結構,因此我無法將它綁定到「.live」或「.delegate」事件。

所以我的下一步是嘗試和直接在無限滾動腳本內再次踢這個函數。當然這是有道理的?該腳本在這裏http://marckremers.com/syndex/js/jquery.infinitescrollfortumblr.js

如果我從jquery.syndex.js複製並粘貼工作腳本,出現錯誤後出現錯誤,這就像我在說另一種語言。代碼本身不是我的,它使用相當抽象的變量來描述一切。

如何調整圖像大小調整功能以在infinitescrollfortumblr.js中工作?

回答

0

您的函數不能使用交叉腳本,因爲它們在關閉中創建了,因此只能在該關閉範圍內看到。

要麼把他們在全球範圍內(bleuch)使用window.funcname = function() { ... },或者創建自己的命名空間對象對他們來說:

NAMESPACE = NAMESPACE || {}; 
NAMESPACE.myfunc = function() { ... }; 
+0

對不起,(bleuch)在不好,不會這樣做嗎? – RGBK

+0

我真的不明白上述,如果你能澄清,將是偉大的! – RGBK

0

回到股票無限滾動的腳本,然後將你的大小調整的腳本,在它的回調:

$(elem).infinitescroll(options,function(){ 
    // your resize code 
}); 
+0

是否會在tumblr上工作,考慮到他們專門爲wordpress製作了一個插件? – RGBK

相關問題