2

有一个里面有一张桌子的链接容器有点麻烦。最初我在 div 周围有一个标签(里面有表格),因为它在 HTML5 中是“允许的”,但是在 IE 6-8 中单击表格时不会重定向页面。

在这里查看一些类似的帖子,我发现问题是将块元素嵌套在 IE (令我惊讶的是)执行正确实现的内联元素中。为了解决这个问题,我添加了一个包装 div,给它一个 URL 的数据路径属性,并在 jQuery 中设置了一个点击事件。

现在的问题是单击事件有效但返回未定义。如果您单击表格内容。我猜这与我对 $(this) 的使用有关,但不是 100%。

的HTML:

<div class="single-event" data-path="someUrl">
   <div class="">
      <h1></h1>
      <p></p>
      <table>
          ........
      </table>
   </div>
</div>

JS

$('.single-event').click(function () {
     window.location.href = $(this).attr('data-path');
});

请让我知道我是否可以改进我的问题,并感谢您的任何回复!

4

1 回答 1

0

问题可能是在分配单击处理程序时文档 dom 尚未准备好。

将赋值函数包装在文档就绪事件处理程序中,就像这样。

<script type="text/javascript">
    $(document).ready(function () {
         $('.single-event').click(function () {
             window.location.href = $(this).attr('data-path');
         });
    });
</script>
于 2013-02-14T11:04:49.077 回答