我使用嵌套的UL构建了一个可扩展的树。这是我所拥有的简化代码:
<li>
<div><a href="somepage">Link</a></div>
<ul>...</ul>
</li>
<li>
的{{1}}为20px,背景图片为加号或减号。我在padding-left
上有一个点击事件,用于切换一个类并将当前状态保存在cookie中。当我点击它时,似乎点击了<li>
- 它得到一个虚线轮廓并且页面位置发生了变化。但是,也会执行<a>
单击事件 - 树会展开。我想只执行<li>
点击事件。
它在IE8 +,Chrome和Firefox中运行良好,而不是在IE7中。如果它有任何意义:我使用jQuery将click事件绑定到<li>
。
编辑:正如T.J.的评论中所建议的那样。克劳德,我添加了一个jsfiddle示例here。编辑2:更改了jQuery选择器。但是仍然有相同的行为。
UPDATE :在IE7模式下它实际上是IE9,会有所作为吗?
答案 0 :(得分:0)
你的例子是错的:在ul中不允许Div。
但是,您可以尝试阻止链接的点击事件。
$(function() {
$('#tree div').click(function() {this.style.background = '#00FF00'; });
$('#tree a').click(function(event) {event.preventDefault(); });
});
答案 1 :(得分:0)
似乎解决方案很简单:使用实际的IE7,而不是IE9的IE7模式。
很抱歉打扰你,伙计们!