jquery javascript等价

时间:2010-01-21 02:10:29

标签: javascript jquery

我使用了太多的jquery

我想用jquery做这个:

<a onclick="javascript:$(this).next().css('display', 'none')">

我以为是这样的:

<a onclick="javascript:this.nextSibling.style.display = 'none'">

但不是。样式返回undefined。

让我澄清一下:

我想这样做:

<a class="errorToggle">error</a>
<div style="padding-left:20px;margin:0 0 10px 0;display:none;">

<h4>A PHP Error was encountered</h4>

<p>Severity: <?php echo $severity; ?></p>
<p>Message:  <?php echo $message; ?></p>
<p>Filename: <?php echo $filepath; ?></p>
<p>Line Number: <?php echo $line; ?></p>

</div>

<script type="text/javascript">
  $(".errorToggle").click(function(){
    $(this).next().css("display", "block");
  });
</script>

没有jQuery BECAUSE这是一个代码点火器错误视图文件,经常会在我的标题之前加载,所以我将无法访问jquery。它不需要漂亮或编码良好,只需工作即可。这不会用于生产。

1 个答案:

答案 0 :(得分:5)

看看这篇文章:
JavaScript nextSibling and Cross Browser Compatibility

摘录:

  

问题在于我们是   引用一个'的'nextSibling'   在我们的JS中使用onClick的元素   事件。在IE中这很有用,   然而在Firefox中'nextSibling'   可能是一个换行符。

你可能想要遍历“nextSibling()”,直到达到你想要的为止。