jqueryonclick don';t与a href和img一起工作
我想在点击ID链接时显示div jQuery:jqueryonclick don';t与a href和img一起工作,jquery,html,cordova,Jquery,Html,Cordova,我想在点击ID链接时显示div jQuery: $('#tab-bar a').on('click', function(e){ e.preventDefault(); var nextPage = $(e.target.hash); page(nextPage); $("#pages .current").removeClass("current"); nextPage.addClass("current"); }); HTML:
$('#tab-bar a').on('click', function(e){
e.preventDefault();
var nextPage = $(e.target.hash);
page(nextPage);
$("#pages .current").removeClass("current");
nextPage.addClass("current");
});
HTML:
-
模仿
当我使用文本而不是图像时,它会按照我的意愿工作。显示h2。
当图像处于“链接”状态时,它将显示一个空白页。
我怎样才能解决这个问题
致意
Simon这是因为当您在锚定中有图像时,当您单击事件目标时,它是一个
img
元素,并且它没有任何哈希属性。在我使用最近的
方法从目标元素中查找最近的元素的地方尝试此操作
$('#tab-bar a').on('click', function(e){
e.preventDefault();
var nextPage = $($(e.target).closest('a')[0].hash);
page(nextPage);
$("#pages .current").removeClass("current");
nextPage.addClass("current");
});
或者,您可以使用this.hash
,其中this
将指向附加事件的元素
$('#tab-bar a').on('click', function(e){
e.preventDefault();
var nextPage = $(this.hash);
page(nextPage);
$("#pages .current").removeClass("current");
nextPage.addClass("current");
});
这是因为当您在锚定中有图像时,当您单击事件目标时,它是一个img
元素,并且没有任何hash
属性。在我使用最近的
方法从目标元素中查找最近的元素的地方尝试此操作
$('#tab-bar a').on('click', function(e){
e.preventDefault();
var nextPage = $($(e.target).closest('a')[0].hash);
page(nextPage);
$("#pages .current").removeClass("current");
nextPage.addClass("current");
});
或者,您可以使用this.hash
,其中this
将指向附加事件的元素
$('#tab-bar a').on('click', function(e){
e.preventDefault();
var nextPage = $(this.hash);
page(nextPage);
$("#pages .current").removeClass("current");
nextPage.addClass("current");
});
应该是
你能给我们一把小提琴吗?或者至少是不起作用的代码?
应该是
你能给我们一把小提琴吗?或者至少是不起作用的代码?this.hash
也可能起作用吗?事件处理程序绑定到a
元素。是的,这将是最简单的解决方案:PWouldthis.hash
也许也可以工作?事件处理程序绑定到a
元素