вызов ф-ции обработчика как метода объекта
Например, устанавливаем обработчик на событие click(юзается jQuery):
$('.button').on('click', muFunction) Почему нельзя указать вместо обычной ф-ции muFunction, вызов метода у определенного объекта? Как реализовать то, что я описал? Заранее спасибо. |
Цитата:
<!DOCTYPE html> <html> <head> <script src="http://code.jquery.com/jquery-latest.js"></script> <!-- <link rel="stylesheet" type="text/css" href="tmp.css" /> --> <style type="text/css"> </style> <script type="text/javascript"> var o={ test: function () { alert('Ok!'); } }; $(document).ready(function (){ $('button').click(o.test); }); </script> </head> <body> <button>Test</button> </body> </html> Цитата:
|
можно и так
<script src="http://code.jquery.com/jquery-latest.min.js"></script> <button>click</button> <script> function f() { return function () { alert("click"); } } $("button").on("click", f()); </script> |
Цитата:
<script src="http://code.jquery.com/jquery-latest.min.js"></script> <button>click</button> <script> function f() { return function y() { return function z() { return function () { alert("click"); } } } } $("button").on("click", f()()()); </script> но нахрена?! |
keen, автор спросил
Цитата:
|
Цитата:
$('.button').on('click', obj.myMethod.bind(obj)) если bind нету в Function.prototype, его можно добавить вручную. Как? искать по словам Function.prototype.bind |
Часовой пояс GMT +3, время: 06:50. |