sliderToggle
yöntemini kullanırken, :visible
ifadesi, doğrudan başka bir şey döndürme gibi görünmüyor.slideToggle ve: visible
show
/hide
'u :visible
ifadesiyle birlikte kullanacak olursam, yalnızca iyi çalışır.
Örnek başarısızlık ait:
jQuery(".fileNode .nodeExpander").click(function() {
var notes = jQuery(this).parent().siblings(".fileNotes");
notes.slideToggle ("fast");
var isVisible = notes.is(":visible"); // Always returns true...
// Do stuff based on visibility...
});
Örnek ait çalışma:
jQuery(".fileNode .nodeExpander").click(function() {
var notes = jQuery(this).parent().siblings(".fileNotes");
var isVisible = notes.is(":visible");
if (isVisible)
notes.hide("fast");
else
notes.show("fast");
// Do stuff based on visibility...
});
Bazı html:
<ul>
<li class="fileNode">
<img src="<%= Url.Content ("~/Images/Collapse.png") %>" alt="<%= UIResources.CollpaseAltText %>" class="nodeExpander" />
</li>
<li class="fileLink">
<%= Html.ActionLink (file.Name, "Details", new { id = file.FileId }) %>
</li>
<li class="fileNotes">
<%= file.Description %>
</li>
</ul>
Ben slideToggle
değil varsayarak yaşıyorum yap show
/hide
- Kontrol edebileceğim başka bir şey var mı?
Firefox 3.5, IE 7, 8 ve Chrome 4'ün hepsini aynı sonuçlarla denedim.
sayesinde K
Tabii ki! Teşekkürler, şimdi bir muppet gibi hissediyorum - var isVisible =! Notes.is (": visible") çağırarak; slideToggle'dan önce cevabı gerekli buluyorum. Teşekkür ederim! – Kieron
Bu biraz karşı sezgisel, ancak mükemmel bir anlam ifade eder. JQuery nesnesi için yalnızca dahili bir kayma durumumuz varsa ... –