有没有一种方法可以提示用户使用服务器端事件处理程序激活JavaScript,以防JavaScript在他们的电脑上关闭,要求他们按下弹出窗口或指定div中的按钮(我的意思是提交表格)来激活JavaScript?
不,没有办法做到这一点。但是,您可以提供一个<noscript>
标签,向用户解释如何打开JS
例如:
<script>alert('hi');</script>
<noscript>Please enable JS by opening preferences panel in your browser</noscript>
您可能希望使用服务器端浏览器嗅探为用户提供最相关的指导(通过告诉他们如何在当前使用的浏览器中进行此操作)。
您可以设置一个具有特定id的div,该id在页面加载时隐藏。然后当页面加载时,你隐藏div。如果他们有js,div就会隐藏。如果他们关闭了它(现在不太可能发生,但不管怎样),那么他们就会看到div.
<div id="hasJsOn">Please turn on javascript for full enjoyment of this page.</div>
<script>
document.getElementById("hasJsOn").style.display = "none";
</script>
您可以检测终端用户的机器上是否启用了JS,并可以通过使用Javascript向表单/链接添加URI Component
,将该信息传递给他们访问的下一个页面上的服务器。
示例(未测试的"飞行中"代码):
<form action="postit.php">
<p>
<input type="hidden" id="js_detector" value="0">
</p>
</form>
<script>
document.getElementById("js_detector").value = 1;
</script>