【发布时间】:2018-07-01 06:30:38
【问题描述】:
我有以下简单的导航菜单(没有子菜单项),我需要在悬停时更改每个菜单项的文本。默认文本位于 a href 标记中,悬停文本位于 data-item 属性中。我已经尝试过这里发布的一些 jQuery 代码的变体,但我没有做对。任何帮助将不胜感激。
HTML
<ul id="menu">
<li class="menu-item" data-item="Research"><a href="#research">01/08</a></li>
<li class="menu-item" data-item="Awards"><a href="#awards">02/08</a></li>
<li class="menu-item" data-item="Education"><a href="#education">03/08</a></li>
<li class="menu-item" data-item="Publications"><a href="#publications">04/08</a></li>
</ul>
jQuery:
$('li > .menu-item').hover(
function() {
var $this = $(this); // caching $(this)
$this.data('a href', $this.text());
$this.document.getElementById("data-item");
},
function() {
var $this = $(this); // caching $(this)
$this.text($this.data('a href'));
});
【问题讨论】:
-
单个文档中的重复 ID 是无效的 HTML。考虑解决这个问题。
标签: javascript jquery html