问问题
16399 次
4 回答
27
于 2011-04-05T09:41:09.237 回答
2
<div id="feature" onclick="location.href='index.php';">
<a href="anotherpage.php">link</a>
</div>
就这么简单!
于 2015-09-04T09:27:29.587 回答
1
$(document).ready(function() {
$('div#feature').click(function() {
alert('div');
});
$('div#feature a').click(function(evt) {
evt.stopPropagation();
});
});
function topicchange(targ) {
alert('link');
return false;
}
这是允许的吗?直接从 href 调用主题更改函数,但阻止传播 click 事件。或者,一切都发生在topicchange中?
于 2011-04-05T11:18:38.417 回答
1
根据http://api.jquery.com/bind/, event.stopPropagation 应该允许目标上的其他事件处理程序被执行。您仍然可以从 Href 执行,但您也可以通过忽略默认单击冒泡到 div 来处理它。
完整演示:http: //jsfiddle.net/leomwa/qrFQM/
片段:
function topicChange()
{
alert('Message from Link: After the div mouse event, I can execute');
return false;
}
$('div#feature').click(function(evnt)
{
var $originatingTarget = $(evnt.target);
if ($originatingTarget && $originatingTarget.is('.insideLink'))
{
alert('Message from Div: Ahh! You clicked on Link...');
evnt.stopPropagation(); // Allows other handlers on the event.target to be executed.
}
});
与@shanethehat 非常相似。
感谢@shanethehat 要求澄清。
于 2011-04-05T11:22:40.027 回答