簡體   English   中英

如何在.on(“ click”)函數中獲取jquery上的第一個元素而不是其child()?

[英]How to get the first element and not its children() on jquery in a .on(“click”) function?

我有一個名為LightSlider的圖庫滑塊插件,我剛剛在互聯網上待了幾天,並且在圖像底部添加了一些圖例欄,所以我試圖使全屏單擊按鈕成為圖像,而不是我制作的圖例欄。 當我單擊圖像時,什么都沒有發生,但是當我單擊圖例欄時,我添加的圖庫插件將全屏顯示。

所以我注意到,由於我在負責全屏調用的負責行上找到了$(this).children() ,所以這種情況正在發生。

這是腳本的相關部分:

$children.on('click', function (e) {
    if (settings.selector !== null) {
        $children = $(settings.selector);
    } else {
        $children = $this.children();
    }
    e.preventDefault();
    e.stopPropagation();
    index = $children.index(this);
    prevIndex = index;
    setUp.init(index);
});

關鍵是,當我將第一行$children.on('click')更改$('img:first-child').on('click')它可以使圖像全屏顯示,而不是圖例條,但是每次我全屏顯示時,初始圖像都是相同的,而不是單擊的圖像。

觀察:畫廊中的圖像全部通過php循環列出

$children.index(this)是我認為負責全屏顯示初始圖像的原因...

我有什么可替換的代碼以使其起作用?

$(document).on('click',function(e){
    if($(this).closest($children).length > 0)
        e.stopPropagation();
})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM