2014-12-02 50 views
0
function generalShowPopup(click_element, show_elements) { 
    click_element.on("click", function(event) { 
    show_elements.each(function() { 
     $(this).show(); 
    }); 
    event.preventDefault(); 
    }); 
} 

通過上述函數,我打算在單擊某個鏈接時顯示元素。將多個元素傳遞給每個函數

調用像這樣(一秒參數)的功能正常工作:

generalShowPopup($(".popup_link"), $(".popup")); 

但我怎麼可能通過兩種元素的第二個參數,即表現出兩種元素被點擊某個鏈接時?

+0

你的意思是在同一時間兩個因素或只有兩個元素呢?我的意思是,它是一個.each,所以如果.popup選擇器匹配兩個元素,它可以顯示兩個元素。 – 2014-12-02 16:20:00

回答

2

只需用一個逗號,,,選擇字符串裏面,實在沒有理由使用.each()

generalShowPopup($(".popup_link"), $(".popup,.selecctor2, #selector3")); 

無需使用每個:

function generalShowPopup(click_element, show_elements) { 
    click_element.on("click", function(event) { 
     event.preventDefault(); 
     show_elements.show(); 
    }); 
} 

更快的方法寫全部是

$(function() { 
    $(".popup_link").on('click', function(event) { 
     event.preventDefault(); 
     $(".popup,.selecctor2, #selector3").show(); 
    }); 
}); 
1

$(".popup")是一個jQuery集合,

只需使用.add()方法:

generalShowPopup($(".popup_link"), $(".popup").add(".another"));