2
假設我有五個div按鈕,每個按鈕都打開一個對話框。對於每個按鈕我有做這樣的事情在我的jQuery腳本...不是一次打開X對話框,而是使用公共代碼行
$JQ_("#opener_1").click(function(){$JQ_("#dialog_1").dialog("open");});
$JQ_("#opener_2").click(function(){$JQ_("#dialog_2").dialog("open");});
$JQ_("#opener_3").click(function(){$JQ_("#dialog_3").dialog("open");});
$JQ_("#opener_4").click(function(){$JQ_("#dialog_4").dialog("open");});
$JQ_("#opener_5").click(function(){$JQ_("#dialog_5").dialog("open");});
我想要做的是一次,而不是使用這部分代碼五次,在我的情況。任何想法?
HTML代碼:
<div id="opener_1" class="opener_1">OPEN #1</div>
<div id="opener_2" class="opener_2">OPEN #2</div>
<div id="opener_3" class="opener_3">OPEN #3</div>
<div id="opener_4" class="opener_4">OPEN #4</div>
<div id="opener_5" class="opener_5">OPEN #5</div>
<div id="dialog_1" class="opener_1">OPEN #1</div>
<div id="dialog_2" class="opener_2">OPEN #2</div>
<div id="dialog_3" class="opener_3">OPEN #3</div>
<div id="dialog_4" class="opener_4">OPEN #4</div>
<div id="dialog_5" class="opener_5">OPEN #5</div>
jQuery代碼:
var $JQ_ = jQuery.noConflict();
$JQ_(function(){
$JQ_('[id^="dialog"]').dialog({autoOpen:false,
width:'auto',
height:'auto',
resizable:false,
show:{effect:"fade", duration:250},
hide:{effect:"fade", duration:250}
});
$JQ_("#opener_1").click(function(){$JQ_("#dialog_1").dialog("open");});
$JQ_("#opener_2").click(function(){$JQ_("#dialog_2").dialog("open");});
$JQ_("#opener_3").click(function(){$JQ_("#dialog_3").dialog("open");});
$JQ_("#opener_4").click(function(){$JQ_("#dialog_4").dialog("open");});
$JQ_("#opener_5").click(function(){$JQ_("#dialog_5").dialog("open");});
});
的jsfiddle例here。
謝謝你我的朋友! –
@GreenMadness我的榮幸幫助你的朋友:) – Praveen