Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 更改页面元素';使用<;a>;标记并单击?_Javascript_Html - Fatal编程技术网

Javascript 更改页面元素';使用<;a>;标记并单击?

Javascript 更改页面元素';使用<;a>;标记并单击?,javascript,html,Javascript,Html,我有一个潜水舱 我想有一个链接,当点击时会隐藏块,我尝试了上面的方法,但不起作用我不知道如何让它起作用,有什么想法或指导吗? <div id='block'> <a href="#" onclick="Document.getElementById('block').style.display = 'none';">Hide</a> </div> 样式是直接指定属性的对象。它不像HTML属性。所以你想要的是: document.getEl

我有一个潜水舱


我想有一个链接,当点击时会隐藏块,我尝试了上面的方法,但不起作用我不知道如何让它起作用,有什么想法或指导吗?


<div id='block'>  <a href="#" onclick="Document.getElementById('block').style.display = 'none';">Hide</a>  </div>

样式
是直接指定属性的对象。它不像HTML属性。所以你想要的是:

document.getElementById('block').style.display = 'none';

样式
是直接指定特性的对象。它不像HTML属性。所以你想要的是:

document.getElementById('block').style.display = 'none';

…或者在jquery的帮助下:

$('#block').hide();
// or:
$('#block').css('display','none');

…或者在jquery的帮助下:

$('#block').hide();
// or:
$('#block').css('display','none');


最好将javascript放在
中,或者最好是一个单独的文件,而不是HTML。但是,由于HTML中有javascript,您可以将代码缩短为
onclick=“this.parentNode.style.display='none';”

最好将javascript放在
中,或者最好是一个单独的文件,而不是HTML。但是由于HTML中有它,您可以将代码缩短为
onclick=“this.parentNode.style.display='none';”

谢谢您的解释。有一个问题,如果div中有更多未设置为display=none的元素,这会不会不起作用?像是表格还是图像?没问题。也可以指定其他CSS属性。请记住,JS使用驼峰格式,CSS使用破折号。例如,JS
element.style.backgroundColor
中的CSS
backgroundColor
将不显示该
div
中的任何内容,但只有该div将具有
style.display='none'
。如果正确,则子元素将从其父元素继承display none。感谢您的解释。一个问题,如果div中有更多未设置为display=none的元素,这是否不起作用?像是表格还是图像?没问题。也可以指定其他CSS属性。请记住,JS使用驼峰格式,CSS使用破折号。例如,JS
element.style.backgroundColor
中的CSS
backgroundColor
将不显示该
div
中的任何内容,但只有该div将具有
style.display='none'
。如果正确,则子元素将从其父元素继承display none。为什么,如果Web服务器必须获取另一个文档,那么加载时间不是会增加吗?也许,您有一个额外的HTTP请求,但是代码大小大致相同,所以这没什么大不了的。如果这是页面上唯一的javascript片段,那么它就没有那么重要了。然而,代码越多,调试就越困难,如果您想更改某些内容,这将是一件非常痛苦的事情。我从个人经验中知道这一点你说得对。我可能会这样做,以简化代码编写,并在以后制作一个优化版本以提高速度。为什么,如果Web服务器必须获取另一个文档,加载时间不会增加?也许,您有一个额外的HTTP请求,但代码大小将大致相同,所以这不是什么大问题。如果这是页面上唯一的javascript片段,那么它就没有那么重要了。然而,代码越多,调试就越困难,如果您想更改某些内容,这将是一件非常痛苦的事情。我从个人经验中知道这一点你说得对。我可能会这样做,使它更容易编码,只是为了以后的速度优化版本。