我是jQuery的新手,我在jQuery中创建了一个历史API-ish脚本,因此只需点击一个新页面中的所需信息。问题是我不知道如何将var放在处理程序中,至少我认为它称为处理程序。这绝对是一件简单的事情。
$("a#click").click(function() {
var addressValue = $(this).attr("href");
$("#main").load("addressValue #load");
return false;
});
答案 0 :(得分:3)
如果您使用:
$("a#click").click(function() {
var addressValue = this.href;
$("#main").load(addressValue + " #load");
return false;
});
它应该工作;问题是你将变量放入字符串中,因此它被评估为变量名,而不是与' #load'
字符串连接的变量。
另外,对于href
来说,避免调用jQuery要快一点,只使用原生DOM方法(这是微优化,但只是稍微便宜一点)。
值得注意的是this.href
确实(有时是有问题的)检索由href
属性(包括域)内的任何值隐含的绝对路径。而jQuery方法只是检索属性中的任何内容,所以:
<a href="/help/contact.html">contact page</a>:
this.href : "http://subdomain.example.com/help/contact.html"
$(this).attr('href') : "/help/contact.html"
答案 1 :(得分:1)
$("a#click").on('click', function() {
var addressValue = $(this).attr("href");
$("#main").load(addressValue+" #load");
return false;
});