我的脚本使整个栏都不显示

时间:2018-08-18 23:22:43

标签: javascript

我有一个订阅框,我试图创建一个X关闭按钮,该按钮记得下次不会在Web存储或cookie中显示。当我单击关闭按钮时,我的整个侧栏设置为不显示任何内容。代替id =“ gfxhsub”。

JavaScript

<script type="text/javascript">
window.onload = function(){
document.getElementById('mailclose').onclick = function(){
this.parentNode.parentNode.parentNode
.removeChild(this.parentNode.parentNode);
return false;
};
};
</script>

html

<div id="gfxhsub" style="margin: 2em 0.5em; height: auto;">
<span id='mailclose'><i class="fa fa-times"></i></span>
[newsletter_signup_form id=6]
</div>

1 个答案:

答案 0 :(得分:0)

您可以通过在click事件处理程序中使用以下代码来实现此目的。

// 1st line: Select the div you want to hide.
// 2nd line: Set the style of the element to display: none;
var elem = document.querySelector('#gfxhsub');
elem.style.display = 'none';

这是一个可行的例子。

#mailclose {
  cursor: pointer;
}
<link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" />
<script type="text/javascript">
  window.onload = function() {
    document.getElementById('mailclose').onclick = function() {
      var elem = document.querySelector('#gfxhsub');
      elem.style.display = 'none';
      return false;
    };
  };
</script>
html

<div id="gfxhsub" style="margin: 2em 0.5em; height: auto;">
  <span id='mailclose'><i class="fa fa-times"></i></span> [newsletter_signup_form id=6]
</div>