0

在使用 jquery document.ready 事件的网站上测试客户端验证时,我注意到了一些有趣的事情。

如果我在禁用 js 的情况下加载登录页面,它的noscript标签会将用户重定向到另一个页面,通知浏览器未启用 js 支持。

如果我在启用 js 的情况下加载登录页面,然后继续禁用它,则附加在其 document.ready 事件上的代码仍在运行,并完美验证了其登录和密码字段中的空输入。

由于我没有看到请求服务器执行此类验证的页面,我想知道假设最初启用 js 的事实是否足以让 document.ready 运行并永久附加代码,无论我如何切换之后的js支持吗?或者也许我错过了什么?

感谢大家能给我的见解。

4

2 回答 2

1

即使您在设置中禁用 JS,浏览器仍会在当前打开的页面上运行 JS。禁用 JS 时加载的任何新页面都将禁用其脚本。

就像浏览器只在页面加载时检查该设置:

Load page -> is scipts on? -> yes -> run        //changing it anywhere after
                           -> no  -> do not run //does not affect it's status
于 2012-05-20T07:38:09.180 回答
1

如果称为“从现在开始禁用 js”,“禁用 javascript”实际上会更接近现实。在禁用之前执行的所有内容都已执行。禁用后将发生的所有事情(例如超时、间隔等)都不再执行。

于 2012-05-20T07:39:53.277 回答