大きな編集: コード セクションを更新しましたが、質問は同じままです。
私はおそらく、いくつかの助けを借りることができるユニークな jQuery の問題を抱えています。
私はこのような(完全に動作する)関数を持っています...
var openslide1 = function() {
$("#slide1").animate({
left: "+=250px",
}, 400, function() {
// Animation complete.
});
$(this).unbind('click', openslide1); \\ to prevent from pushing slide over too many times
};
$("#openslide1").click(openslide1);
私の問題は、無制限の数のスライドが存在する可能性があるため、「openslides」になる可能性があることです。各「openslide」セレクターは、独自のスライドに対応しています。(たとえば、#openslide2 は #slide2 を開き、#openslide2 のバインドを解除します...など)。
では、これらを 1 つの変数と関数に組み合わせるにはどうすればよいでしょうか。
また、別のイベントのクリックで #openslide を「再バインド」したいと考えています。現在、私はこれを通してそれらを一度に1つずつ行うことができます....
$("#closeslide1").click(function() {
$("#slide1").animate({
left: "-=250px",
}, 500, function() {
// Animation complete.
});
$('#openslide1').click(openslide1); \\ rebinds openslide1
});
しかし、これが結合された関数になると、「openslide1」は関数の変数ではなくなると思います。では、#closeslide がクリックされたときにそのクリック イベントを再バインドするにはどうすればよいでしょうか。(そして明らかに、この質問の最初の部分を使用して、closeslide 変数にも適用します。)
<div class="section">
<a class="edit-btn" id="openslide1" href="#null">edit</a>
<a class="edit-btn" id="openslide2" href="#null">edit</a>
<a class="edit-btn" id="openslide3" href="#null">edit</a>
<a class="edit-btn" id="openslide4" href="#null">edit</a>
</div>
<div class="slide" id="slide1">
<h1>Edit Row</h1>
<p>Prototyping data below, may not reflect link clicked.</p>
<a href="#null" id="submitslide1" class="btn btn-primary">Submit</a> <a id="closeslide1" class="btn btn-danger" style="color:#fff" href="#null">Cancel</a>
</div>
<div class="slide" id="slide2">
<h1>Edit Row</h1>
<p>Prototyping data below, may not reflect link clicked.</p>
<a href="#null" id="submitslide2" class="btn btn-primary">Submit</a> <a id="closeslide2" class="btn btn-danger" style="color:#fff" href="#null">Cancel</a>
</div>
<div class="slide" id="slide3">
<h1>Edit Row</h1>
<p>Prototyping data below, may not reflect link clicked.</p>
<a href="#null" id="submitslide3" class="btn btn-primary">Submit</a> <a id="closeslide3" class="btn btn-danger" style="color:#fff" href="#null">Cancel</a>
</div>
<div class="slide" id="slide4">
<h1>Edit Row</h1>
<p>Prototyping data below, may not reflect link clicked.</p>
<a href="#null" id="submitslide4" class="btn btn-primary">Submit</a> <a id="closeslide4" class="btn btn-danger" style="color:#fff" href="#null">Cancel</a>
</div>
助けてください!
ありがとう!