我是jquery(真正的新手)的新手,但我正在努力解决问题。 我不能让这个脚本以所需的方式工作。 有两个div。当您单击第二个时,也会单击第一个。 当你有第一个div的特定名称时,这对我有用。 两个例子的html + css:
<div id ="div11" name="this-is-name-of-div" data-unique="this-is-name-of-div" style="width:100px;
高度:100像素; 背景颜色:蓝色; color:white; cursor:crosshair;“&gt; FIRST ELEMENT
第二部分
$(document).ready(function () {
$("#div11").bind("click", (function () {
alert("DIV11 is clicked!");
}));
$(".item").bind("click", (function () {
$('div[name=this-is-name-of-div]').trigger("click");
return false;
}));
});
第一个div具有与第二个div data-unique属性相同的name属性。通过单击第二个div我想设置要点击的div的名称,但在这些方括号下我无法使其工作。有人可以帮我解决这个问题吗?请事先提供帮助。
$(document).ready(function () {
$("#div11").bind("click", (function () {
alert("DIV11 is clicked!");
}));
$(".item").bind("click", (function () {
$('div[name=$(this).attr("data-unique")]').trigger("click");
return false;
}));
});
jsfiddle-notworking-to-achieve [的jsfiddle-未工作到实现] [3]
答案 0 :(得分:0)
试试这个:
var name = $(this).attr("data-unique");
$('div[name=' + name + ']').trigger("click");
但如果name
包含某些特殊字符]
,则可能会失败。如果这是一个问题,请尝试使用filter
方法,如下所示:
var name = $(this).attr("data-unique");
$('div').filter(function() { return $(this).attr('name') == name; })
.trigger("click");