【报错】IE下使用js隐藏元素display='none'不生效

一、问题描述

今天在写页面时,在js中用到了下面这句来隐藏页面上的元素:

document.getElementById("xxx").style.display = 'none';

但是使用IE打开页面的时候,发现这部分元素并没有成功被隐藏。

 

二、问题解决

于是首先考虑的是可能IE不支持这个语法,但是查找了资料后确认IE是支持这个语法的。

 

纠结了一会儿,发现IE下方弹了个提示框:“Internet Explorer已限制此网页运行可以访问计算机的脚本或ActiveX控件”。启用控件后,发现可以正常隐藏了。原来是因为IE禁止了JavaScript的执行。

 

那么如何让IE默认允许执行html中的JavaScript脚本呢?参考了以下这篇文章:

https://www.jianshu.com/p/d5e335a63382

 

在html和head标签中间添加save from url这句:

<html xmlns="http://www.w3.org/1999/xhtml">
<!-- saved from url=(0014)about:internet -->
<head>

添加完再重新打开,JavaScript可以执行,元素成功被隐藏了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章