Javascript jQuery.attr()是否返回第一个(错误)值?

Javascript jQuery.attr()是否返回第一个(错误)值?,javascript,jquery,html,Javascript,Jquery,Html,基本上,我做了一个函数,当你点击#page时,它会在容器中打开一个页面。现在的问题是,它总是显示第一个。menu data open=“url/url.html” 让我用代码解释一下: 我有两个列表项: <li class="menu" data-open="pages/home.html"><a href="#"><div class="wrap">HOME</div></a></li> <li class="men

基本上,我做了一个函数,当你点击
#page
时,它会在容器中打开一个页面。现在的问题是,它总是显示第一个
。menu data open=“url/url.html”

让我用代码解释一下:

我有两个列表项:

<li class="menu" data-open="pages/home.html"><a href="#"><div class="wrap">HOME</div></a></li>
<li class="menu" data-open="pages/services.html"><a href="#"><div class="wrap">SERVICES</div></a></li>
现在,无论我是否单击服务,url总是从第一个列表项返回

这是一张GIF:


您需要引用已单击的项目。使用:

var url = $(this).attr("data-open");
而不是:

var url = $("nav ul li.menu").attr("data-open");

您需要引用已单击的项目。使用:

var url = $(this).attr("data-open");
而不是:

var url = $("nav ul li.menu").attr("data-open");

我会使用
数据('open')
而不是
attr()
,但是使用
这个
肯定会解决问题。当你长时间不做web开发时就会发生这种情况。你忘了事情。是的,这是正确的。“长时间的web开发”-键入和检查作为正确答案我会使用
数据('open')
,而不是
attr()
,但是使用
这个
肯定会解决问题。当你长时间不进行web开发时就会发生这种情况。你忘了事情。是的,这是正确的。“web开发很长一段时间”-输入错误和检查作为正确答案