2016-09-21 3 views
0

Ich habe eine Website mit mehreren Popup-Fenstern. Ich möchte 1 einzelne Funktion für mehrere Elemente verwenden. Es funktioniert gut in regulären JS, aber nicht in jQuery.Wie übergeben Sie ein Funktionsargument in den JQuery-Selektor

In meinem HTML Ich habe so etwas wie:

<button onclick="div_show('contact')">More?</button> 

und

<div id="contact" > 
    blah blah 
</div> 

Dieses #contact Element ist standardmäßig ausgeblendet. Also, wenn ich auf die Schaltfläche klicken erscheint der Kontakt div mit diesem JS:

function div_show(id) { 
document.getElementById(id).style.display = "block"; 
} 

Allerdings möchte ich jquery für die Überblendeffekte verwenden

function div_show(id) { 
$(???).fadeIn(); 
} 

Wie kann ich die Funktion Argument, in einen Pass zu spielen die jQuery-Selektor

Es funktioniert gut, wie dies natürlich:

function div_show(id) { 
    $(#contact).fadeIn(); 
    } 

sondern arbeitet auf ly für 1 Element.

Antwort

5

Ich denke, was Sie suchen ist dies:

$("#" + id).fadeIn(); 

Für mehrere Selektoren können Sie dies tun:

$("#" + id1 + ", #" + id2).fadeIn(); //etc 

Auch für die Vollständigkeit, diese Zeile:

$(#contact).fadeIn(); 

sollte mit Anführungszeichen formatiert sein:

$("#contact").fadeIn(); 
0
function div_show(id) { 
$('#'+id).fadeIn(); 
} 
Verwandte Themen