我觉得我的逻辑是有道理的;不幸的是,它没有:(?
更新:livecode
的问题:
我如何在mouseenter上抓取$(this).attr.('title')
并将该文字设置为('HGROUP h1')
的文字?
jQuery
$("div.box").on('mouseenter', function () { //select the box create mouseenter function
var headerText = $(this).attr('title'); //get selected title and set to headerText
$('HGROUP h1').text(headerText); //set hgroupd h1 text to headerText
});
$("div.box").on('mouseleave', function () { //select the box create mouseleave function
$('HGROUP h1').text('DESIGNOBVIO.US'); //set the orginal text back in place on mouseleave
});
HTML
<div class="box">
<h1 title="can i haz it?2"></h1>
<div class="innerbox">
<figure></figure>
<ul class="categorySelect">
<li class="misc"></li>
<li class="print"></li>
<li class="video"></li>
<li class="web"></li>
</ul>
</div>
Hgroup HTML
<HGROUP>
<h1>designobvio.us</h1>
<h2>the colors duke, the colors!7</h2>
</HGROUP>
对我出错的地方的任何进一步解释都很棒。
答案 0 :(得分:1)
看起来你需要使用:
var headerText = $(this).find('h1:first').attr('title');
答案 1 :(得分:1)
改变这个:
var headerText = $(this).attr('title');
要:
var headerText = $(this).find('h1').attr('title');
您的代码正在尝试获取div的标题,而不是<h1>
子项。
答案 2 :(得分:0)
您应该使用find获取标题。
var headerText = $(this).find('h1').attr('title');
试试这个:
$("div.box").on('mouseenter', function () {
//select the box create mouseenter function
var headerText = $(this).find('h1').attr('title');
//get selected title and set to headerText
console.log(headerText);
$('HGROUP h1').text(headerText); //set hgroupd h1 text to headerText
});
$("div.box").on('mouseleave', function () {
//select the box create mouseleave function
$('HGROUP h1').text('DESIGNOBVIO.US');
//set the orginal text back in place on mouseleave
});
这是demo