Tag: document ready

在Safari 9中后退按钮后触发JQuery / Javascript

当我使用Chrome / Firefox中的浏览器返回按钮导航回来时,我的网站正常工作(与没有向后导航时加载的情况相同)。 在Safari导航回来之后,我无法获得任何“on load”类型事件来触发StackOverflow上的标准文档是否已准备就绪或是否存在一些hackaround。 我没有做任何特别的事,我真的需要打电话: $( document ).ready(function() { // analyticsEvent(); // startAnimation(); // etc(); }); 有谁遇到过同样的问题?

我们可以在asp.net页面中使用$(document).ready()吗?

我尝试使用$(document).ready()时出错,如上图所示。 我应该尝试解决这个问题? 编辑23/05/2011 10:54 我有一个线索。 我工作的页面inheritance自母版页 在母版页中,这段代码不起作用,也许是不同路径的问题 Back Office 这段代码似乎不起作用 在母版页的主体上,有一个脚本管理器和jquery在那里,这使得jQuery工作,是因为我们在body中使用scriptmanager使document.ready不起作用? 我发现了问题。 问题是jquery代码在masterpage页面上,在脚本管理器中,而脚本管理器在body标签内。 document.ready位于页面上inheritance在母版页上的标题标记上,因此在将代码排除到正文之前,还没有包含jquery,并且它是错误的。 解决这个问题最简单的方法是,我必须在body标签的底部移动javascript代码。 正确的解决方法,我仍然找不到是将javascript包含在头文件中。 但我找不到一种有效的方法。 我的母版页和inheritance页面位于不同的路径上。 我找到了很多技术,但没有一个能奏效。

在Google Chrome 中使用outerWidth()进行错误的宽度计算

我在div里面有一个导航栏(topmenu)。 如果菜单的宽度大于外部div的宽度,我必须隐藏其余的菜单元素。 不幸的是我不能使用overflow:hidden为div overflow:hidden 。所以我使用.outerWidth()函数来计算div的总宽度和每个elment(li)的宽度,并隐藏溢出元素。 所以我的问题是它在firefox(19.0),IE(8)中的工作正常!但不是在chrome中。 在chrome中,所有元素都被隐藏。 当我改变时,问题就解决了 $(document).ready(function() {}); to $(window).load(function() {}); 但是,总的ul显示了几分之一秒,然后它被隐藏(IE,FF它仍然可以正常工作)。 有没有更好的解决方案呢? 或任何不同的逻辑。 样品 3 Option 2 Option 1 Option http://jsfiddle.net/RSA3X/4/ 我的类似情况

在document.ready之前,Jquery UI界面看起来很难看

HTML元素显示早于onload或document.ready被触发。 所有jQuery UI小部件都加载到document.ready上,它使页面看起来很难看,只需几秒钟。 处理它的可能选项 – 在使用jQuery UI进行拉伸之前隐藏元素,并在加载后用JS显示它们。 但是如果JS被关闭 – 用户将看不到标准HTML和jQuery UI的任何元素。 使用它的最佳做法是什么?

head.ready()vs. $(document).ready

最近发现了head.js图书馆和男孩我很满意,虽然我对一件事情仍然有些困惑。 来自headjs.com: 当脚本到达时,已经触发了“DOM ready”事件,例如$(document).ready()。 如果加载的脚本依赖于该事件,请确保您的库可以处理此事件。 jQuery 1.4+有效。 考虑到这一点,如果$(document).ready()中的代码依赖于使用head.js加载的外部脚本,那么设置使用jQuery的页面的最佳方法是什么? 我们可以一起丢失$(document).ready()调用,并且仍然成功地设置了依赖于文档准备好的事件监听器之类的东西吗? 例如: head.js(“script1.js”, “script2.js”, “script3.js”, function() { $(‘#button’).click(function(event) { alert(“clicked”); }); }); 或者我们是否要在函数中包装$(document).ready()? 只是想知道什么是最佳实践,以确保在需要的时候一切准备就绪。

$(document).ready和$(document).on(’pageinit’)之间的区别

我正在使用jquery mobile,我想重现这段代码: $(document).ready(function () { $.mobile.loading(‘show’); }); 它显示了微调器,直到我决定使用其他函数隐藏它 $.mobile.loading( ‘hide’ ); 现在我看到document.ready()在jquery mobile 1.2中已被弃用,所以他们建议用$(document).on(‘pageinit’)替换它$(document).on(‘pageinit’) 但如果我用建议的代码替换我的代码微调器自动隐藏……为什么? 这是新代码: $(document).on(‘pageinit’,function(){ $.mobile.loading( ‘show’ ); });

在加载DOM后如何运行jQuery的后备副本?

以下是我的文档中关闭body标记正上方的标记中的第一行代码(它指定在Google的CDN失败的情况下运行本地提供的jQuery副本): if(!window.jQuery){ var script = document.createElement(‘script’); script.type = ‘text/javascript’; script.src = ‘/js/jquery.js’; var scriptHook = document.getElementsByTagName(‘script’)[0]; scriptHook.parentNode.insertBefore(script, scriptHook); } jQuery(document).ready(function($){ // page behaviors }); 它确实成功执行,因为如果我的计算机没有连接到Internet(这是本地提供的页面),则会插入jQuery的本地副本。 但是,下面的document.ready()部分不会执行。 我猜这是因为它是在jQuery的后备副本生效之前调用的。 什么是以某种方式“延迟”执行的正确做法,以便jQuery的任何副本都能正常工作?

将参数传递给setTimeout的闭包

我遇到了一个问题,我的应用程序存在于iframe中,而且它是从外部域调用的。 当iframe正确加载时,IE9不会触发加载事件,所以我认为我使用setTimeout来调查页面。 无论如何,我想看看我的setTimeout通常需要什么持续时间才能完成,所以我希望能够记录setTimeout从我的回调中触发的延迟,但是我不知道如何将该上下文传递给它所以我可以记录下来。 App.readyIE9 = function() { var timings = [1,250,500,750,1000,1500,2000,3000]; for(var i = 0; i < timings.length; i++) { var func = function() { if(App.ready_loaded) return; console.log(timings[i]); App.readyCallBack(); }; setTimeout(func,timings[i]); } }; 我一直在IE9的控制台中获取LOG:undefined。 完成此任务的正确方法是什么? 谢谢

在jQuery Mobile中做$(document).ready的正确方法是什么?

假设我想在jQuery Mobile完成渲染UI后运行一些代码。 mobileinit事件不起作用,因为它在此之前被提升。 快速谷歌搜索似乎表明仅使用$(document).ready将无法与JQM一起使用; 但我只是尝试了它(在mobileinit之后调用)它对我mobileinit :我的代码运行并动态更新元素等等就好了。 所以我想知道,是否有一些原因我不应该使用它(它不可靠或混淆JQM),或者那里有关于它的信息根本不准确? 我错过了什么? 更新 :请参阅此处进行演示。

如何有效地使用yepnope.js和$(document).ready()?

我一直在实现yepnope脚本加载器作为modernizr.js库的一部分。 之后我成功地加载了jQuery以加载jQuery依赖脚本。 我是异步加载资源的新手,所以对我来说这有点新鲜。 我一直在寻找,但以下没有太多运气。 我的问题是,在使用yepnope.js框架时,您对如何有效地替换$(document).ready()的function有何看法? 我的理论是在我的基础库中创建一个适当命名的函数,然后在我的页面上将该变量设置为包含我现有的$(document).ready()代码的匿名函数。 在所有脚本加载到完整回调中之后,yepnope将调用此变量。 你是否同意这是一个很好的方法,或者我是否完全以错误的方式接近这个? (对于那些不知道的人,yepnope.js的异步性质意味着文档在yepnope加载器完成之前调用$或jQuery,抛出“$ is undefined”错误< – 如果错误,请纠正我。) 第一个问题,希望它是一个好问题。