2014-09-25 72 views
0

免責聲明一:我是品牌屁股新jquery,這是我的第一篇文章SO。如何使一個jquery點擊事件發生不止一次

聲明二:我已經搜索了很多不同的方法,並找到了很多詳細的答案,但我仍然無法讓我的jquery按照我喜歡的方式工作。

那說:

我想創建一個我的網站的移動版本。 (僅供參考,桌面&平板電腦的版本是在這裏:http://creative-servic.es

我需要的移動版本,是主要的投資組合的圖像和縮略圖畫廊切換的地方點擊在頁腳圖庫圖標時,然後當點擊一個拇指時,它們再次切換回來,縮略圖被點擊的投資組合圖像現在可以在頁面頂部看到。這所有的作品(耶!)......但只有一次:(

換句話說

,一旦縮略圖中選擇,我不能再拿到畫廊通過其在頁腳圖標來激活。

我知道這是一個相當普遍的問題,並且與事件請求後不再存在於DOM中的東西有關,但請用我的術語輕鬆一點 - 我甚至不確定DOM中的DOM是什麼第一,也沒有什麼約束力(或解除約束),但這些都是我研究中不斷出現的一些有些令人困惑的詞彙。

這裏是關於移動樣機的問題:http://mnml.cc/ces/m

我試過.live,.on,.click和.delegate函數無濟於事。

在此事上的任何幫助將非常感激!

非常感謝和 最熱烈的問候,Dd。

+0

控制檯顯示JavaScript錯誤 - 該功能'畫廊()'(見畫廊按鈕的代碼)未找到。它在哪裏? – sideroxylon 2014-09-26 01:42:01

+0

嗨sideroxylon。它在functions.js中的代碼是// GALLERY $(document).ready(function(){0}('#gallery-icon')。點擊(function(){ \t \t var toggleWidth = $('#gallery')。width()=== 0?「100%」:「0」; \t \t $('#gallery')。animate { \t \t \t寬度:toggleWidth \t \t}); \t \t $(本).toggleClass( 'ON'); \t}); ()#hide(); \t});點擊(功能(){ \t \t $(this).parent()。hide(); \t}); }); – 2014-09-27 02:46:00

+0

是的,看到了 - 這是一個綁定到「gallery-icon」元素的點擊函數,而不是一個名爲gallery()的函數。點擊圖標時檢查您的控制檯。 – sideroxylon 2014-09-27 12:16:40

回答

0

您的頁面現在可以正常工作,除非您點擊其中一個縮略圖(首先點擊圖庫圖標後)。原因如下:當你的頁面加載時,div`gallery'的寬度爲0,但是有高度和不透明度。然後,在你點擊功能您有:

$("#gallery a").on('click', function() { 
    $(this).parent().hide(); 
}); 

這個隱藏gallery DIV(通過減少寬度,高度和不透明度爲0 =顯示:無 - 檢查控制檯,你會看到這樣的情況)。最後,與#gallery-icon綁定的點擊功能僅切換div寬度 - 它不會更改0高度和0不透明度。請嘗試更改上面的代碼是這樣的:

$("#gallery a").on('click', function() { 
    $('#gallery').css('width', 0); 
}); 

這應該將其設置到原來的狀態,`圖庫圖標」,然後單擊功能應該能夠切換可見div的寬度。

(您可以動畫功能以及,如果你願意,扭轉原來的點擊功能。)

+0

像一個魅力工作。你是我的英雄 - 非常感謝你的幫助! – 2014-09-27 19:57:13

+0

非常歡迎。 – sideroxylon 2014-09-27 22:05:50

+0

嗨,sideroxylon。 – 2014-09-28 21:00:46