我是初学者。javascript/jquery
如果这个问题听起来很傻,请原谅我。
在阅读本教程时,我尝试将函数中一些变量的值写入 javascript console
,以便更好地理解函数的工作原理
$(document).ready(function(){
$("div.post h2 a").click(function () {
var a = $(this),
href = a.attr('href'),
content = a.parent().next();
console.log('a='+a);
console.log('a.get(0)='+a.get(0));
console.log('a parent='+a.parent());
console.log('a parent.get(0)='+a.parent().get(0));
console.log("href="+href);
console.log('content='+content);
content.load(href + " #content");
return false;
});
我稍微修改了html
<div class="post">
<h2 id="h21"><a href="other/mypage.html">My Page</a></h2>
<div class="content">
Teaser text1...
</div>
</div>
<div class="post">
<h2 id="h22"><a href="other/myotherpage.html">My Other Page</a></h2>
<div class="content">
Teaser text2...
</div>
</div>
});
当我点击第一个链接时,我得到这个控制台日志输出
a=[object Object]
a.get(0)=file:///home/me/dev/misc/other/mypage.html
a parent=[object Object]
a parent.get(0)=[object HTMLHeadingElement]
href=other/mypage.html
content=[object Object]
我认为 $(this)
函数中的表达式将是被单击的元素(即第一个<a element
)。为什么它显示为 [object Object]。我无法弄清楚如何a.get(0)
变成file:///home/me/dev/misc/other/mypage.html
同样,变量不content
应该等于第一个 div
(包含 Teaser text1)吗?为什么它显示为 [object Object]?