禁用当前页面的JavaScript

我正在构建一个调试脚本,该脚本将包含在 index.php <的顶部 / code> </ p>

我想提供一个复选框,当选中时,禁用页面上的所有javascript,jquery等。</ p>

我正在保存 这些设置与 $ _ SESSION </ code> </ p>

我已经找到了一个替换所有&lt; script&gt;&lt; / script&gt; </ code>标签的解决方案 使用&lt;! - &lt; script&gt;&lt; / script&gt; - &gt; </ code>。 但是想知道是否有更安全的anthing,更具体。</ p>

由于文件包含在我的索引顶部,我可以用javascript编写一些内容来取消绑定任何事件/监听器/ 触发器等?</ p>

我不想改变我的任何javascript,因为我的想法是将它作为一个独立的部分包含在每个项目/构建的顶部。
谢谢!</ p>
</ div>

展开原文

原文

I'm building a debug script that is to be included at the top of my index.php

I would like to provide a checkbox that when checked, disables all javascript, jquery etc on the page.

I'm saving these settings with $_SESSION

I've already found a soloution that replaces all <script></script> tags with <!--<script></script>-->. But would like to know if there is anthing cleaner, more specific.

Since the file is included at the top of my index, could I write something in javascript to unbind any events/listeners/triggers etc?

I would prefer not to change any of my javascript, as the idea is to include this at the top of each project/build as a standalone piece. Thanks!

duan0403788996
duan0403788996 没关系“容易”,没有办法做到这一点。
5 年多之前 回复
dtczp02204
dtczp02204 好的,谢谢@SheldonNeilson,我在下面的答案中提供了更多的清晰度。有没有简单的方法来实现这一目标?不知道为什么我得到了投票:(
5 年多之前 回复
doujiangao4229
doujiangao4229 不幸的是,这是一个愚蠢的想法..它只会阻止在同一范围内执行脚本。例如。相同的<script>标签等。可能没有一个简单的解决方案。
5 年多之前 回复
duanjiangzhi6851
duanjiangzhi6851 您打算抛出什么样的例外以使整页出现故障?
5 年多之前 回复
duanjianxi8439
duanjianxi8439 听起来很棒@SheldonNeilson你会留下一个答案/例子吗?
5 年多之前 回复
douqiao8370
douqiao8370 如果你只想在调试时禁用JS,你可能故意抛出一个js异常?这会阻止其他任何事情被执行。
5 年多之前 回复
dongmangwei3822
dongmangwei3822 谢谢你,我已经有了类似的东西。我希望在页面顶部有一个复选框,我可以用它来切换它。并非总是在一个浏览器/位置。
5 年多之前 回复
dongwuxie7976
dongwuxie7976 请检查以下链接:-webdeveloper.com/forum/...
5 年多之前 回复
dragonsun2005
dragonsun2005 这不是一个答案,但你也可以寻找可以阻止javascript的浏览器扩展。
5 年多之前 回复

1个回答



您无法使用JavaScript禁用JavaScript。</ p>

简单地说,您无法制作 确保您的JS是第一个执行的,也不能在整个页面上可靠地禁用脚本。</ p>

想象一下如何在正常浏览中弄乱...某些恶意站点会在浏览器中禁用JS ,你必须弄清楚设置的位置。</ p>

我确信你可以在浏览一两个小时之后梦想重置它。</ p>

</ div>

展开原文

原文

You can't disable JavaScript with JavaScript.

Simply put, you can't make sure your JS is the first to execute, nor can you reliably disable scripts all over the page.

Imagine how that would mess with normal browsing... Some malicious site disables JS on your browser, and you're gonna have to figure out where the setting is.

I'm sure that you can dream about resetting it, after an hour or 2 of browsing.

dongxuying7583
dongxuying7583 我有。
5 年多之前 回复
dongzhun8449
dongzhun8449 谢谢你的诚实回答。 如果你想改变你的意见,我会乐意将其标记为正确。 不知道为什么我也因此被投票了! :(
5 年多之前 回复
duanfen9983
duanfen9983 对不起,但你想要做的事情根本无法可靠地完成。 您无法确保您的JS是第一个执行的,也无法在整个页面上可靠地禁用脚本。
5 年多之前 回复
doufencigui933699
啊啊啊小孔 出于便携性的原因,我宁愿不要乱用任何源文件。 我计划在会话中存储值,然后如果遇到一些JS异常来破坏它,或者搜索脚本标记并注释掉。
5 年多之前 回复
doubi4435
doubi4435 我打算用disableJavascript = true设置session var。 这是在头部,然后将监听,如果设置,则将一个var附加到脚本标记
5 年多之前 回复
dqxz96998
dqxz96998 当用户可以与复选框进行交互时,该页面的JS已经被执行了。 如果您可以访问这样的页面,为什么不包含某种布尔GET参数来排除脚本文件? 另外,你如何计划重新开启JS?
5 年多之前 回复
douzhong2954
douzhong2954 谢谢回复。 我可以理解是否要求无限制地禁用用户javascript。 但是,我只想为单页加载/会话禁用它。 我想知道我是否可以让javascript抛出错误并停止解析页面的其余部分。 它只是允许我在页面中使用复选框禁用它。
5 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐