代码不能在IE中隐藏和取消隐藏Div

时间:2015-04-22 16:16:17

标签: javascript jquery internet-explorer

我不是一个好的JS,因为我使用的代码是我和同事一起为我做的,它在Chrome中运行良好,但在IE中并不好玩。

代码是允许我有一个列表,我可以单击以显示隐藏的div,当我单击列表中的另一个链接时,它隐藏最后一个div并取消隐藏最后一次单击等。

这是我的JS

function hideClass(id){
    $('.objections').addClass('hide');
    $('#'+id+'_container').removeClass('hide');

}

我在HTML中有这个

 onclick="hideClass(this.id)"

是否有改变它以使其在IE中工作?

正如我所说,我不擅长JS只有HTML CSS,所以我不知道从哪里开始

1 个答案:

答案 0 :(得分:0)

如果没有看到您的代码,很难确切知道什么是失败的。我猜到你可能正在做什么,并提出了这个基本代码,它在IE中为我工作。但是,IE最初阻止了脚本,我不得不点击允许。所以注意这一点。

function hideClass(id) {
  $('.objections').addClass('hide');
  $('#' + id + '_container').removeClass('hide');
}
.hide {
  opacity: 0;
}
<!DOCTYPE html>
<html>

<head>
  <meta charset="UTF-8">
  <title>Test</title>

  <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
</head>

<body>
  <div id="myID" class="objections" onclick="hideClass(this.id)">
    <h1>I OBJECT!</h1>
  </div>
  <div id="myID_container" class="hide">
    <h1>Can you see me now?</h1>
  </div>
</body>

</html>

因为您使用的是jQuery,所以这段代码更清晰一点:

function hideClass(div) {
  $(div).hide();
  $('#' + div.id + '_container').show();
}
<!DOCTYPE html>
<html>

<head>
  <meta charset="UTF-8">
  <title>Test</title>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
</head>

<body>
  <div id="myID" class="objections" onclick="hideClass(this)">
    <h1>I OBJECT!</h1>
  </div>
  <div id="myID_container" style="display:none">
    <h1>Can you see me now?</h1>
  </div>
</body>

</html>