是否可以检查文档是否未就绪并在jQuery中定期执行函数?
简单地说,我希望实现以下目标:
$('document').isNotReady(function(){
$('#divState').text('Still Loading');
});
$('document').Ready(function(){
$('#divState').text('Loaded');
});
Run Code Online (Sandbox Code Playgroud)
在jQuery中是否有内置函数来实现这样的功能?
我只想在文档仍在加载时才调用函数..我该怎么办?
我确定我只是一个大脑放屁,我错过了一些明显的东西,但请帮忙.
我无法弄清楚为什么以下代码(自定义幻灯片放映的早期编码)在文档加载时不会破坏.
$(document).ready(function() {
var numSlides = $('#slides .slide').length();
var wrapperWidth = $('#homeBanner').width();
var totalWidth = numSlides * wrapperWidth;
// set width of #slides to width of all .slide elements added together
$('#slides').css('width', totalWidth+'px');
}); // end document.ready()
Run Code Online (Sandbox Code Playgroud) 在W3Schools网站上发布了一个jQuery测验...
http://www.w3schools.com/quiztest/quiztest.asp?qtest=jQuery
问题#16如下,
在文档加载完成之前,哪个jQuery函数用于阻止代码运行?
A. $(文件).load()
B. $(文件).ready()
C. $(正文).onload()
我选错了答案A.(他们的官方答案是B.)
我回答说,以为我知道以下内容,
后document.load火灾一切在页面加载,包括所有图片
document.ready只在加载DOM后才会触发(不一定是所有图像都已加载)
我解释了原始问题的措辞,"文档已完成加载",包括所有内容(包括所有图像).毕竟,我认为这就是他们称之为"document.load"的原因.同样,为了使他们的答案正确,你必须得出结论"DOM"相当于"文档".这似乎不正确,否则为什么称它为"文档对象模型"(DOM)而不仅仅是"文档"?
尽管W3School声称B是正确答案,但究竟什么是正确答案?
谢谢你的想法.
旁注: 在我的其他相关问题中引用我自己的评论......
"我实际上在jQuery网站上学习了大部分jQuery,当我遇到困难时,我会在StackOverflow上搜索.我主要是在W3School上进行测验,因为我正在调查他们对jQuery认证的"先决条件".我不知道认为自己是一名jQuery专家,但我很容易在他们的测验中得到95%(19/20).看到答案中的不正确的措辞,我想我已经在这里发帖确认了我已经怀疑过的.我对这些类型的看法认证正在转变."
编辑:
我向W3Schools通报了这个帖子的存在.
编辑2:
当我回答原始测验问题时,我在想$(window).load(),因此我的测验答案明显不正确.我相信这个事实不会让三个多项选择都没有作为正确的答案.请参阅下面的详细答案.
我有一个功能,我想用来调整图像大小:
当我在document.ready上运行它时,它没有任何效果; 返回的图像大小是'0'(您可能会注意到它在小提琴中起作用...我不确定是什么导致这种不一致的说实话,但在我的测试网站上它肯定会返回'0'的高度和宽度".
这是预期的行为吗?如果是这样,当图像有宽度时,我怎么能做一个简单的监听器?
我想使用JQuery创建一组要添加到HTML文档的元素$(document.createElement()).$(document).ready()在开始使用文档元素之前我知道是必需的.
但是,是否有必要使用$(document).ready()以创建元素$(document.createElement())?换句话说,我可以$(document.createElement())在文档准备好之前使用吗?
我正在制作一个小型的javascript框架,原因有很多,包括学习.
因此,我想实现"文档就绪"功能,所以我去检查jQuery如何伪造DOMContentLoadedIE <9.
问题是,它似乎没有按照它应该的方式工作.在IE8和一个很好的浏览器中检查这个小提琴.
逻辑是:应用css使div开始为红色,然后在"ready"中使其变为蓝色,并在加载时使其变为绿色.此外,有三个带有虚假URL的img标签,因此在就绪和加载之间存在合成延迟.
应该发生什么:
如果有的话,div不应该显示为红色超过一秒钟.理想情况下,首先看到的应该是蓝色.然后,当浏览器超时无效图像时,绿色.
在IE8上会发生什么:
div保持红色,直到所有图像"加载"(在此合成示例中,超时),然后变为绿色.
再一次,我并不是要求修复,我问是否在IE8上表现这样的框架是正确的(我不再关心IE 6-7了),或者这是否正在发生由于我以某种方式滥用jQuery.
PS:我知道如何手动绑定事件,我要求更多关于这是否是预期/可接受/错误/我的错误.
我正在编写一些Javascript,我知道我必须准备任何可以修改DOM树的文档.我还需要对cookie进行一些工作.这些是否被认为是DOM树的一部分(意味着我必须为它们准备文件)?我不相信,但我不确定.
Hy all,
我正在一个类中使用awesomium webcontrol创建一个Winform项目.我正在将该控件导航到http://www.google.com/(仅用于测试)并DocumentReady为其添加了一个偶数列表器.但它不会激发听众......(i don't get the "in the listener!" message)
这是我得到的代码(我称之为doSomeScrap主要形式(Form1):
class scrapper
{
WebControl web = new WebControl();
public void doSomeScrap()
{
MessageBox.Show("in the scrapper...");
web.DocumentReady += webcontrolEventListener;
web.Source = "http://www.google.com".ToUri();
web.Update();
}
private void webcontrolEventListener(object sender, EventArgs e)
{
MessageBox.Show("in the listener!");
}
}
Run Code Online (Sandbox Code Playgroud)
另外,我听说过LoadingFrameCompleted,但是当我使用它时,我收到以下错误:
'Awesomium.Windows.Forms.WebControl' does not contain a definition for 'LoadingFrameCompleted' and no extension method 'LoadingFrameCompleted' accepting a first argument of type 'Awesomium.Windows.Forms.WebControl' …Run Code Online (Sandbox Code Playgroud) 单选按钮
<input name="radio-choice-t-6" class="qololbl" id="radio-choice-t-6a" value="qolo" checked="checked" type="radio">
<label for="radio-choice-t-6a" style="border: 1px solid #2d5f7c;width:90px;border-bottom-left-radius:4px;border-top-left-radius:4px;font-family:Noto Sans;">Toast</label>
$(document).ready(function (e) {
$('.qololbl').trigger('click');
$(".qololbl").click(function(){
alert("Hi");
});
});
Run Code Online (Sandbox Code Playgroud)
如何在文档准备好的情况下触发qololbl click事件.这段代码不起作用为什么..?提前致谢.帮我