2012-10-18 42 views
0

有人可以告訴我如何使用on()實現隱藏功能。我試過了:需要幫助使用隱藏()與(​​)

$(document).on('hide','selector'); 
    $(document).on('selector', function(){ 
     $(this).hide(); 
    }); 

想知道如何正確應用這樣的函數使用on();

+3

是用於處理事件。你只需要'$('selector')。hide()' – Archer

+1

你想用代碼完成什麼? –

+0

只是隱藏所有匹配的元素。並且還自動隱藏動態添加到頁面的元素(使用相同的選擇器ofc)。 – user1683645

回答

2

.on功能用於將事件線了的東西。你沒有告訴它甚至連接到什麼。你想要什麼時候隱藏元素?讓我們假裝你想要點擊一個按鈕時隱藏它。

HTML:

<div id="a">This will hide</div> 
<button id="b">Hide!</button>​ 

的jQuery:

$(document).on('click', '#b', function() { 
    $('#a').hide(); 
});​ 

如果您只是想隱藏元素,而不是由一個事件或任何觸發,只需撥打$('#a').hide();,它會隱藏元素。當然,改變你的選擇器來處理你的HTML。

小提琴:http://jsfiddle.net/gromer/Zq756/

編輯:

有趣。你有任何控制動態添加的元素?如果是這樣,我會添加一個類到你想添加隱藏的元素。喜歡的東西:

<div class="initial-hide">This div should be hidden when it's loaded.</div>

然後在你的CSS,補充一點:

.initial-hide { 
    dislay: none; 
} 

然後,每當一個元素被裝入initial-hide類,它會被隱藏。看到更新的小提琴:http://jsfiddle.net/gromer/Zq756/1/。 Add按鈕將說明添加的類將如何幫助你。

+1

+ 1這裏的相關點是**事件**位,隱藏不是事件 – Liam

+0

我想要做的是隱藏一個元素與適當的選擇器,如果當它被動態添加到頁面。現在我必須應用$('selector')。hide();腳本以及添加的內容。 – user1683645

+1

啊,檢查我的編輯。 – Gromer

1

在javascript中沒有on hideon show事件捕獲。你所做的就是捕捉元素的隱藏和顯示,並附加一個自定義函數。

$('element').hide(delay, onHide); 

function onHide(){ 
    //do whatever 
} 

$('element').show(delay, onShow); 

function onShow(){ 
    //do whatever 
}