2011-03-14 64 views
0

在人們因爲沒有發佈代碼片段而投票給我之前,讓我告訴你我已經嘗試了很多次,但人們似乎無法弄清楚什麼是錯誤的。查看Why doesn't this jquery code work?This jQuery hide function just does not want to work,瞭解哪些工作不正常。這是一個使用jQuery和嵌入式API的Ruby on Rails應用程序。奇怪的是,人們已經將完全相同的javascript和html代碼複製到jsfiddle中,並且適用於他們。我的簡單Ruby on Rails應用程序出現了一些問題

我在問是否有人可以在這裏查看代碼並將它分叉:https://github.com/meltzerj/Dreamstill有人認爲Ruby on Rails和jQuery足夠好,可以計算出嵌入式API。真的沒有太多的代碼,所以它不應該是一個麻煩。我真的很感謝任何幫助讓我走上正軌。謝謝。

哦,請不要猶豫,問我任何問題。

+0

之前,什麼瀏覽器,你使用和你嘗試過任何其他瀏覽器? – corroded 2011-03-14 07:35:22

+0

是的,我試過不同的瀏覽器...我的主瀏覽器是鉻 – 2011-03-14 07:36:06

回答

4

我拉你的代碼,我想(希望)我可能有一個解決方案爲你,假設我已經正確識別你的問題。

我在表單中粘貼了一個YouTube鏈接,並被重定向到/videos/1,那裏有一個'視頻'鏈接,後來被嵌入視頻的縮略圖取代。

我看到它的問題,是這樣的:

$("#video_div img").click(function() { 
    $("div.embed").toggle(); 
}); 

當文檔準備好處理程序被調用,有你的文檔中沒有照片呢,所以你#video_div img選擇沒有發現任何東西。這可以通過使用jQuery方法而不是click()documentation來輕鬆更正。我更新到這:

$("#video_div img").live('click', function() { 
    $(this).toggle(); 
    $("div.embed").toggle(); 
}); 

這似乎工作正常:點擊時,縮略圖消失,嵌入的視頻出現。

希望能幫助你指出正確的方向。

+0

謝謝!這工作!對此,我真的非常感激!順便說一句.live()和.bind()有什麼不同?這些文件不太清楚。 – 2011-03-14 16:05:09

+0

'bind()'在它被調用後立即尋找你的選擇器,在這種情況下'#video_div img'。另一方面'live()'定期檢查你的文檔是否是選擇器。如果你的文檔的結構異步改變,'live()'可能就是要走的路。 – theTRON 2011-03-14 22:07:54

相關問題