JQuery動的コンテンツ
-
21-09-2019 - |
質問
またdivタグの中にコンピュータと付け加えておきたい、jquery効果が見受けられたため、divタグが、あなたは何点ぐらいになると思うすることはできますか。
<script type="text/javascript">
$(function() {
//run the currently selected effect
function runEffect() {
//most effect types need no options passed by default
var options = {};
//check if it's scale, transfer, or size - they need options
//if (selectedEffect == 'scale') { options = { percent: 0 }; }
//run the effect
$("#effect").effect('explode', options, 500, callback);
};
//callback function to bring a hidden box back
function callback() {
setTimeout(function() {
$("#effect:hidden").removeAttr('style').hide().fadeIn();
}, 1000);
};
//set effect from select menu value
$(document).ready(function() {
$("div.effect").click(function() {
runEffect();
return false;
});
});
});
</script>
<asp:Repeater ID="repItems" runat="server">
<ItemTemplate>
<div class="toggler">
<div id="effect" class="ui-widget-content ui-corner-all">
<h3 class="ui-widget-header ui-corner-all"><%#Eval("Tag") %></h3>
</div>
</div>
</ItemTemplate>
</asp:Repeater>
また、上記の第一事業部営業です。なぜですか??
解決
のように、これらのdivのクラスを使用してみてください
<div id="effect" class="effect ui-widget-content ui-corner-all">
とjQueryの使用中( "div.effect")セレクタ
私は複数のもののために同じIDを使用して、問題を引き起こす可能性があることを「考える」...
他のヒント
考慮すべきもう一つのアイデアは、リピータAROUND idを持つdivタグを置くことです。リピータ自体は非常に簡単とあなたのjqueryのを見て見え、クリックされたリピータでdivタグのどの重要ということは表示されません。
$(document).ready(function() {
$("#base").click(function() {
runEffect();
return false;
});
});
<div id="base">
<asp:Repeater ID="repItems" runat="server">
<ItemTemplate>
<div class="toggler">
<div id="effect" class="ui-widget-content ui-corner-all">
<h3 class="ui-widget-header ui-corner-all"><%#Eval("Tag") %></h3>
</div>
</div>
</ItemTemplate>
</asp:Repeater>
</div>
私は何を変更する必要があることは、あなたがクリックイベントを添付して「準備」関数であると思う - あなたは私には有効では見えませんセレクタとして$(「div.effect」)を使用しています。私は$を使用することをお勧め(「UIウィジェットコンテンツ」)。むしろ、(他の人が述べたように一意でなければならない)IDより、クラスに基づいて、この選択します。
、あなたは部分的なID照合を使用することができます。リピータは(それはユニークだ確実にするために)各div要素のためにあなたのIDの先頭に情報を追加するにもかかわらず、IDはまだ「効果」で終わる、または任意の名前を使用していたでしょう。
あなたはあなたの利点にこれを使用することができます。 「効果」IDのあなたしているオペレーティングあなたのjQueryコードでは、このことから、あなたのコードを変更します:
$("#effect")
これを
$("[id$='effect']")
このリピータは、「repItems_ ctl001_効果」に、それぞれのdivのIDの名前を変更するか、何を持っているときに、jQueryのはまだそれを見つけるでしょう。
、「効果」でそのID ENDすべての要素を選択しますまた、ノートを行い、あなたの質問に記載されているあなたのjQueryコードの端部に向かって、あなたの代わりにIDを、クラス「効果」に基づいてdiv要素にアクセスしようとしています。ちょうどFYIます。