JavaScript: Получить функцию, вызывающую HTML-объект - PullRequest
1 голос
/ 18 февраля 2011

Эй, да, я знаю, что с [funcname].caller или arguments.callee.caller вы можете получить ссылку на функцию, которая вызвала фактическую функцию, НО - следующий сценарий:

<a href="#" onclick="return something()">Test</a>

Внутри something() У меня нет шансов добраться до A-Tag, даже со ссылкой .caller, если я не изменю сценарий следующим образом:

<a href="#" onclick="return something(this)">Test</a>

С помощью «this» я передаю свою ссылку на A-Tag функции, но есть ли способ получить ссылку на A-Tag, не передавая ее явно функции?

1 Ответ

0 голосов
/ 18 февраля 2011

Ну, я думаю, что это нормально, это всего лишь одно слово кода, и это не вредит. Используя jquery, вы можете сделать это так

$(function(){
    $("body").delegate("a", "click", function(){
        alert($(this).html());
    });
});

// Оба кода будут работать для вас

$(function(){
    $('a').click(
        function(){
            alert($(this).html());
        }
    );
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...