我在下面的代码中使用示例菜单。
<html>
<head>
<title>Tree Demo</title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery.jstree.js"></script>
<script type="text/javascript">
$(document).ready(function() {
/* $("#main").jstree({
"themes" : {
"theme" : "default",
"dots" : false,
"icons" : false
},
"plugins" : [ "themes", "json_data", "ui"],
"json_data" : {
"ajax" : {
"url" : "jsondata.json",
"data" : function (n) {
return { id : n.attr ? n.attr("id") : 0 };
}
}
}
});
$("#main").bind("open_node.jstree", function (e, data) {
// data.inst is the instance which triggered this event
console.log(data);
console.log($.data(data.rslt.obj[0],"folder_name"));
});
$("#main").bind("select_node.jstree", function (e, data) {
// data.inst is the instance which triggered this event
console.log(data);
console.log($.data(data.rslt.obj[0],"folder_name"));
}); */
$("#main1").jstree({
"themes" : {
"theme" : "default",
"dots" : false,
"icons" : false
},
"plugins" : [ "themes", "html_data"]
});
});
</script>
</head>
<body>
<div id="main1">
<ul>
<li><a href="javascript:void(0)">Home Folder</a>
<ul>
<li><a href="javascript:void(0)">Sub Folder1</a></li>
<li><a href="javascript:void(0)">Sub Folder2</a></li>
</ul></li>
<li><a href="javascript:void(0)">Shared Folders</a>
<ul>
<li><a href="javascript:void(0)">Shared Folder1</a></li>
<li><a href="javascript:void(0)">Shared Folder2</a></li>
</ul></li>
</ul>
</div>
<div id="main">
</div>
</body>
</html>
当我在IE浏览器中运行上述代码时,它会显示页面顶部(在URL栏下方),如
“为了保护您的安全,Internet Explorer已限制此网页运行可以访问您计算机的脚本或Activex控件。点击选项..”
当我右键单击并单击允许阻止的内容时,它会运行。但我想要没有此弹出消息我需要运行代码...我怎么能自动运行这个?...
答案 0 :(得分:80)
也有代码解决方案。我在培训视频中看到了它。您可以添加一行来告诉IE本地文件是安全的。我在IE8上测试过它的工作原理。该行是<!-- saved from url=(0014)about:internet -->
有关详细信息,请参阅https://msdn.microsoft.com/en-us/library/ms537628(v=vs.85).aspx
<!DOCTYPE html>
<!-- saved from url=(0014)about:internet -->
<html lang="en">
<title></title>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function () {
alert('hi');
});
</script>
</head>
<body>
</body>
</html>
答案 1 :(得分:37)
我相信这只会在这种特殊情况下在本地运行页面时出现,即从Web服务器加载apge时不应该看到这一点。
但是如果您有权这样做,可以按照工具(菜单)→ Internet选项→安全(选项卡)→自定义级别(按钮)→和禁用 自动提示ActiveX控件。< / p>
这当然会影响您的浏览器。
答案 2 :(得分:15)
您有两种选择:
使用网络标记。这将启用单个html页面加载。有关详细信息,请参阅here。为此,请将以下内容添加到doctype下方和html标记上方的网页中:
&lt;! - 保存自url =(0014)about:internet - &gt;
禁用此功能。要执行此操作,请转到Internet选项 - >高级 - >安全 - >允许活动内容...然后关闭IE。当您重新启动IE时,它不会给您这个错误。
答案 3 :(得分:15)
如果您要使用
<!-- saved from url=(0014)about:internet -->
或
<!-- saved from url=(0016)http://localhost -->
确保HTML文件以“/ r \ n”格式保存为windows / dos格式,作为语句后的换行符。 否则我无法使其发挥作用。
答案 4 :(得分:7)
将IE配置为始终允许阻止内容的步骤:
Tools
菜单,然后选择Options...
Advanced tab...
"Allow active content to run in files on My Computer"
。“阻止的内容”是Windows XP Service Pack 2的安全功能。如果您没有安装SP2,则永远不会看到此消息。
答案 5 :(得分:0)
我不确定您是否可以通过网页本身的HTML进行更改,这是一个客户端设置,告诉他们的浏览器是否希望安全性高。大多数其他浏览器不会这样做,但根据我所知,除非用户禁用该功能,否则无法停止此操作。
单击“允许”后,它是否仍然按照您的要求执行操作?如果是这样那么它不应该是一个太大的问题
答案 6 :(得分:0)
或者,只要未给出权限,旧的<noscript>
标记就可以正常工作。你可以在css中覆盖页面并告诉他们有什么问题,...不使用javascript ofcourse。