猿问

嵌套列表中的 jQuery 目标数据元素

我有一个列表,其结构如下:


<ul  data-Id="2" class="listElement">

<li></li>

<li></li>

<li>

    <ul data-Id="3" class="listElement" style="display: none">

        <li></li>

        <li>

            <ul data-Id="4" class="listElement" style="display: none">

                <li></li>

            </ul>

        </li>

    </ul>

</li>

我需要能够定位当前隐藏的 ul 元素,并slidetoggle()对其执行操作。我尝试在 jQuery 中做到这一点,但效果不太好:


var test = 3; //i need to declare it as a var, because i get this from another item 

$('.listElement').find('[data-Id="' + test + '"]').slideToggle("fast");

什么都没发生,我似乎找不到我在这里错过的东西


炎炎设计
浏览 91回答 1
1回答

尚方宝剑之说

您的代码是正确的,但请确保当您的 javascript 代码运行时 dom 元素已经放置(准备好)。或者您的 javascript 应该在雇用的文档准备就绪时运行。$(document).ready(function(){ &nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;test&nbsp;=&nbsp;3;&nbsp;//i&nbsp;need&nbsp;to&nbsp;declare&nbsp;it&nbsp;as&nbsp;a&nbsp;var,&nbsp;because&nbsp;i&nbsp;get&nbsp;this&nbsp;from&nbsp;another&nbsp;item&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;$('.listElement').find('[data-Id="'&nbsp;+&nbsp;test&nbsp;+&nbsp;'"]').slideToggle("slow"); });
随时随地看视频慕课网APP

相关分类

Html5
我要回答