在旧的 jquery 中,可以在 document.ready 的顶部添加一个函数,如下所示:
$.readyList.unshift(function () {
现在这已经不可能了。还有另一种方法可以将一个功能移到顶部吗?我们的 ASP.NET 页面由不同的控件组成,它们都有自己的 document.ready,因此我目前无法更改它。但我需要一个功能在所有其他功能之前运行。
还有另一种“干净”的方法吗?
在旧的 jquery 中,可以在 document.ready 的顶部添加一个函数,如下所示:
$.readyList.unshift(function () {
现在这已经不可能了。还有另一种方法可以将一个功能移到顶部吗?我们的 ASP.NET 页面由不同的控件组成,它们都有自己的 document.ready,因此我目前无法更改它。但我需要一个功能在所有其他功能之前运行。
还有另一种“干净”的方法吗?
从这里:
这是因为 ready 是(并且应该是)一个事件——一些内部结构被暴露的事实是一个错误(我们正在努力纠正这个错误)。正如你所提到的,它是无证的,它的曝光是无意的。
虽然我不确定是什么阻止您使用新的 readyList 编写自己的列表(或扩展 jquery):
var readyList = [func1, func2, func3 ...];
并在以下位置一一执行.ready()
: