目标元素由 attr 然后附加类 jQuery
Target element by attr then append class jQuery
>我有一个li
标签,看起来像:
<li class="item maybe" data-selected="1"></li>
<li class="item confused" data-selected="2"></li>
<li class="item why" data-selected="3"></li>
然后我还有另外三个元素,如下所示:
<li class="display"></li>
<li class="display"></li>
<li class="display"></li>
我正在尝试选择其中一个元素,将类附加到我的第二个元素列表中。
因此,如果我选择了带有data-selector="1"
的li
标签,那么我的显示列表中的第一个li
标签将添加类maybe
。
这是我到目前为止尝试过的,但是当我控制台注销我的var时,我变得未定义:
if ($('.item').attr('data-selected') == 1) {
var itemClassAdd = $('.item').find("[data-selected='1']").attr('class');
console.log(itemClassAdd);
$(".display").addClass(itemClassAdd);
}
谢谢!
为了方便起见,我在点击事件中执行操作:
$("li.item").click(function(){
var index = $(this).data("selected");
$("li.display").eq(index - 1).addClass($(this).attr("class"));
});
如果您不需要课程项目:
$("li.item").click(function(){
var index = $(this).data("selected");
var c = $(this).attr("class").replace("item ", "");
$("li.display").eq(index - 1).addClass(c);
});
类和属性位于同一元素上,因此您使用复合选择器,而不是find
:
var itemClassAdd = $('.item[data-selected="1"]').attr('class');
但请注意
if ($('.item').attr('data-selected') == 1) {
将只分支第一个元素匹配.item
具有data-selected="1"
,这可能是也可能不是你想要的。
现场示例:
if ($('.item').attr('data-selected') == 1) {
var itemClassAdd = $('.item[data-selected="1"]').attr('class');
$(".display").addClass(itemClassAdd);
}
.maybe {
color: green;
}
<ul>
<li class="item maybe" data-selected="1">maybe</li>
<li class="item confused" data-selected="2">confused</li>
<li class="item why" data-selected="3">why</li>
</ul>
<ul>
<li class="display">d1</li>
<li class="display">d2</li>
<li class="display">d3</li>
</ul>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
相关文章:
- 如何在JQuery函数中定义一个值,然后调用另一个函数并使用该值
- 等待300毫秒,然后使用jQuery向下滑动菜单
- 使用Jquery收集数组中的行ID,然后为新表查询这些值
- jquery通过ajax验证电子邮件,然后再通过ajax提交表单
- JQuery将侦听事件添加到.rezable(),然后附加DIV's
- jQuery Deferred and promise-错误:对象没有't支持属性或方法'然后'
- jQuery幻灯片Down&然后在计时器上向上滑动
- jQuery检查CSS宽度是否大于0,然后添加CSS属性
- 当调用.of()然后调用.on()时,Jquery是否可能将事件推迟
- 在提交之前验证表单,jQuery发布到javaScript,然后提交到确认页面
- 使用 jQuery 加载 JSON,然后将其显示给查看器
- jQuery淡入淡出/动画不透明度到不同的显示类型,然后阻止
- jQuery 插入,然后淡出,然后删除
- jQuery移动显示页面5秒钟,然后重定向
- 如何检查 HTML 标记,然后在 jQuery 验证中添加错误
- JQuery 测试元素是可见的还是隐藏的,然后添加删除类
- JQuery/JavaScript:遍历表单字段,执行计算,然后提交
- jQuery检查URL,然后显示和隐藏元素
- Jquery.然后是链行为
- 如何将参数传递给“”调用的函数;jQuery然后”;