window.onload стрелял уже?

Я нашел альтернативный ответ ответа Greg, немного менее подробному, потому что он использует Python 2.1's пользовательские функциональные атрибуты (к которому достаточно удобно можно получить доступ из их собственной функции).

def foo():
    var_b = 3

    def _closure(x):
        return _closure.var_a + var_b + x

    _closure.func_dict['var_a'] = 2
    return _closure


localClosure = foo()

# Local closure is now "return 2 + 3 + x"
a = localClosure(1) # 2 + 3 + 1 == 6

# DO SOME MAGIC HERE TO TURN "var_a" of the closure into 0
# ...but what magic? Is this even possible?
# apparently, it is
localClosure.var_a = 0

# Local closure is now "return 0 + 3 + x"
b = localClosure(1) # 0 + 3 +1 == 4

Мысль я отправил бы его для полноты. Аплодисменты так или иначе.

6
задан 6 October 2009 в 02:41
поделиться

2 ответа

Обновленный ответ: Посмотрите этот сайт. Он использует уловку, проверяя, определен ли последний элемент document.getElementsByTagName («*») или нет. Кажется, он работает в Opera и IE.


Исходный ответ: Вы не можете проверить, но можете сделать:

window.setTimeout(function () {
    // do your stuff
}, 0);

Это определенно подействует на вас после загрузки страницы.

1
ответ дан 18 December 2019 в 04:54
поделиться

jQuery ready () ставит в очередь функцию, которая будет запущена, когда документ загружается или запускается немедленно, если документ уже загружен:

$(document).ready(function() {
    //your code here
});

Просто убедитесь, что jQuery включен перед блоком сценария. Если вы не можете напрямую включить какие-либо ресурсы скрипта, вы всегда можете скопировать тело jQuery-min в сам скрипт.

-1
ответ дан 18 December 2019 в 04:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: