jquery文档就绪侦听器与图像加载;执行顺序
jquery document ready listener vs image loading; execution order
我有一个页面,我想根据一天中的时间显示不同的图像。
我现在的工作方式是附加到 jquery 就绪侦听器,我有一个选择所有图像元素并根据小时更改其来源的函数。每个 img 标签都有一个在 html 中指定的默认 src,以防用户停用 js 或其他什么。
但是,使用这种方法,我偏执地认为浏览器开始加载默认图像,然后继续加载特定于时间的图像,从而导致不必要的开销。
所以我的问题是:如果我在 jquery ready 事件中更改 img 源,在浏览器开始加载图像之前,img src 是否会更改。
感谢您的任何和所有回复。如果这是一个重复的问题,我深表歉意,但是关于jquery ready事件的细微差别,有一百万个问题。
我认为准备好的侦听器会在所有 html 加载后立即开始运行,这意味着它不会等待 bg 加载并且 ready 将运行。因此,根据时间的不同,您可以进行默认加载,然后进行切换。
也许你可以省略图像的 src 或 bg 的 css,只在 ready(( 中使用 jquery 添加它。
对于禁用 js 的人,您可以在 noscript 块中加载默认
你可以在jQuery的文档中找到这个问题的答案:
虽然 JavaScript 提供了用于执行代码的 load 事件,但 页面呈现,直到所有资产才会触发此事件 如图像已被完全接收。在大多数情况下, 脚本可以在 DOM 层次结构完全运行后立即运行 构建。
因此,一旦代码存在,无论图像的加载状态如何,ready 事件都会开始运行。这意味着图像可能会显示也可能不会显示,它可能已完全或部分加载,它仅取决于在接收更改命令之前图像加载的速度。
如果你想绝对肯定地确定图像永远不会加载,你会想要在服务器端这样做,以便只有你想要的图像被写入代码 - 如果在执行更改时有一些延迟,你肯定会看到全部或部分默认图像。
- 无法在通过jQuery的ajax加载的页面中执行javascript
- 在使用Polymer'加载所有json文件后执行方法;s的核心ajax
- 如何在从浏览缓存加载页面时执行javascript
- Jquery:代码在rails中的页面加载时未执行
- 如何准确执行加载脚本&退出弹出窗口
- 页面在我的javascript执行后重新加载,我不希望它这样做
- 加载服务器端渲染的React组件后执行脚本
- jQuery-在页面加载时执行一个函数
- ajax加载了内容,脚本没有执行
- 如何在加载完整页面后严格执行javascript代码
- 在动态加载的对话框中执行Javascript
- Dojo AMD加载程序执行定义具有空/缺失依赖项的回调
- 通过AJAX加载页面并执行javascript和CSS
- 返回上一页,不加载执行正文
- 谷歌自定义搜索 - 从网址参数手动加载/执行
- jquery文档就绪侦听器与图像加载;执行顺序
- 发现jsphp加载/执行问题
- jQuery ready()是否在所有JS文件加载/执行后触发
- 如何在加载/执行页面的任何其他脚本之前将Javascript注入/执行到页面中
- 在视图页面加载执行控制器功能,angularjs方式