2013-03-13 4 views
0

или, вернее: могу ли я написать код, который позволяет передавать данные обработчикам событий, которые работают как на Zepto, так и на jQuery (например, как Zurb's Foundation)?Поддерживает ли Zepto передачу данных обработчикам событий, таких как jQuery?

После обработчик событий, который нуждается во внешних данных, определенные во время декларации, эти данные могут быть переданы как часть event.data в JQuery:

var name = $(this).find("a").attr("href"); 
// add click function 
$(this).click({_name: name}, function(event) { 
    $("#"+event.data._name).val($(this).find("a").attr("value")); 
    return(false); 
}); 

Похожие не представляется возможным в зепто. Как можно добиться того же результата и как должен выглядеть код, который работает как на Zepto, так и на jQuery для этого варианта использования?

+0

Согласно [этот запрос тянуть] (https://github.com/madrobby/zepto/pull/183) и так же как [это] (https: // GitHub. com/madrobby/zepto/issues/143), это должно быть возможно. Я признаю, что я еще не пробовал. –

ответ

1

Это можно сделать с помощью функции $.proxy Zepto, см. http://zeptojs.com/#changelog. $.proxy совместим с Zepto и jQuery.

Пример:

$.proxy(function(json) { 
    ... 

    // store 
    data[this._channel] = json; 
}, {_channel: channel}) 
Смежные вопросы