出于某种原因,这行代码返回undefined为$(this).attr("href")
$("a").attr("href", "javascript:page('" + $(this).attr("href") + "')");
我怎样才能获得价值?
出于某种原因,这行代码返回undefined为$(this).attr("href")
$("a").attr("href", "javascript:page('" + $(this).attr("href") + "')");
我怎样才能获得价值?
$("a").click(function(e){
e.preventDefault();
page(this.href);
});
尝试:
$("a").attr("href", function (index, oldHref) {
return "javascript:page('" + oldHref + "')");
});
检查出attr
有关,需要一个函数引用过载信息的文档。
虽然@Pointy指出,你应该考虑编写一个事件处理程序,而不是在你的标记中使用javascript:
。
如果你想这样做(更新页面上的链接的所有href属性),你可以做
$("a").each(function() {
$(this).attr("href", "javascript:page('" + $(this).attr("href") + "')");
});
你不需要内嵌的JavaScript,为什么不象下面这样:
$("a").click(function(){
page(this.href);
return false;
});
+1替代嵌入式脚本的标记。 – Nope
链接到JavaScript是臭的。如果可能的话,请改用事件 – Kos
使用“javascript:”URL是很丑的。为什么不使用“点击”处理程序? – Pointy