我需要在页面开始加载之前执行一个JavaScript?我该怎么做?首先我的脚本应该在脚本完成后执行,如果我需要我应该加载页面,否则我不会加载它。例如,如果我的脚本重定向到另一个页面,我不应该加载当前页面,否则我应该加载它。如何在dom准备好之前执行javascript?
回答
简单的写在脚本标记你的脚本在body标签的第一元素:
- 更新 - 隐藏其他网页元素,以饱满的宽度和高度,使用DIV
,如果你想显示页面,隐藏div,这将解决问题
是的,我做了...但它是页面加载后执行... – Ver 2010-10-18 13:41:54
为隐藏页面,使用div全宽和高度,如果你想显示页面,隐藏div,这将解决问题 – 2010-10-18 13:47:52
脚本标记在遇到它们时立即执行。只需将脚本标签提前放好,然后在条件为真时使用重定向。挂钩window.onload事件处理程序是如何让JavaScript在加载时触发的。
是我的脚本尽快执行...但它加载当前页面1秒,然后执行我的脚本... – Ver 2010-10-18 13:43:36
就做服务器端...
你目前的逻辑,似乎更适合在服务器端,如果你真的想完全避免页面加载..
不知道,但我想这是重定向到JavaScript的版本的网页/网站。因此,这将取决于浏览器。 – user113716 2010-10-18 13:51:18
@patrick,看起来这样..我的重点主要是**加载**部分,这是不可避免的...对于*渲染*有解决方法,确实.. – 2010-10-18 13:56:07
是否有可能您最初只提供一个页面,其中只包含需要在HTML文档中执行的JavaScript代码?然后您可以根据JavaScript的结果请求您想要的页面。
您可以使用jQuery load()方法有条件地加载页面的一部分,它在DOM准备好之前未运行脚本,但可能会实现您想要执行的操作。
您无法在加载页面之前运行脚本(不会搞乱文档类型),但可以在页面中尽早放置脚本,即在head
部分。
在脚本完成之前,您无法停止加载页面。该页面将继续在后台加载,但在脚本完成之前不会渲染。
如果您在脚本中执行重定向,页面将停止加载,但是在等待新响应到达时已经加载的内容将会呈现。
你的答案是非常有用的,但我看到谷歌正在做类似的事情,所以这些网址不断变化。我需要在我们的网站上做同样的事情。请让我知道是否有任何方式或框架来实现此目标..在此先感谢.. – 2012-12-12 09:13:30
@DilipRajkumar:谷歌没有使用Javascript来重定向用户。 – Guffa 2012-12-12 10:08:10
Ohh ok ..那我该怎么做到这一点..我有很多认证的html页面,如果他们没有通过身份验证,它必须重定向到登录页面..请帮助.. – 2012-12-12 10:28:00
- 1. dom准备好后执行javascript
- 2. 在整个DOM准备好之前执行JS
- 3. 在DOM准备好之前显示spinner.gif
- 4. 在我准备好数据之前,如何防止执行cellForItemAtIndexPath?
- 5. 如何在DOM准备好之前阻止表单提交?
- 6. 在DOM准备好之前运行jQuery代码?
- 7. 如何在DOM准备好后执行angularJs函数?
- 8. Javascript代码在所有元素准备好之前得到执行
- 9. 在DOM准备好之前插入CSS到<head>?
- 10. 在DOM准备好之前用jQuery淡化图像
- 11. 自执行函数是否在dom准备好运行?
- 12. 使用DTM工具在DOM准备好之前加载同步第三方JavaScript
- 13. Angularjs dom加载准备好
- 14. FBJS和Dom准备好
- 15. DOM中准备好了GWT
- 16. 从模块内执行DOM准备好的JQuery函数?
- 17. 当DOM准备好插入顺序时执行处理程序
- 18. 如何检查DOM是否准备好使用JavaScript?
- 19. 如何在webview准备好之前完成进度条?
- 20. 在关闭另一个之前可以执行MySQLi准备好的语句吗?
- 21. 准备好块并在准备就绪后执行队列
- 22. 如何让javascript在dom和css准备就绪时执行,但不是图像
- 23. 流星在DOM准备好之前加载脚本 - 脚本在meteor.startup函数中
- 24. DOM准备好后加载iframe。文档准备好
- 25. JQuery(document).ready在文档准备好之前仍然运行?
- 26. 防止JavaScript的执行,如果没有准备好
- 27. 在DOM看起来准备好之前,YUI中的onDomReady会触发?
- 28. 修改DOM后如何确保DOM已准备好再次
- 29. 在dom正在加载之前执行javascript
- 30. 在事务中执行它们之前准备多个语句?
从您的评论下面,我猜测脚本首先执行,但页面的其余部分有第二个加载,而新的HTTP请求正在等待响应。也许你可以尝试在'
这是一个坏主意,如果它是为了安全。所有内容都发送到计算机,任何观看流量或禁用JS的人都可以获取内容。 – epascarello 2010-10-18 13:53:27
@epascarello - 是的,我们不知道最终目的是什么。我想这可能是一个简单的重定向到一个JavaScript增强页面。你是对的,如果考虑到安全性,这不是一个解决方案。但随后任何JavaScript解决方案都会通过禁用javascript来失败。 – user113716 2010-10-18 13:57:00