2014-08-21 2 views
0

Я использую некоторый плагин. В этомделать что-то перед обработчиком событий по умолчанию

<button class="datepicker-button">&nbsp;</button> 

Для этого класса datepicker-кнопки в библиотеке плагинов есть обработчик события click.

То, что я хочу сделать IS-

мне нужны некоторые ручные операции перед запуском обработчика по умолчанию, указанный в библиотеке.

Что-то вроде this-

$(".datepicker-button").on("click",function(){ 
     //some operations written by me 
     //then do operations specified by the library 

}); 

Возможно ли это? Если возможно, дайте мне любую идею. Заранее спасибо.

+0

вы хотите сделать что-то, прежде чем нажать делать? – diEcho

+0

Почему бы вам просто не войти в код плагина и не изменить его там? Или вы даже можете удалить обработчик событий плагина и написать свой собственный после изменения кода исходного кода. – Eclecticist

+2

@Eclecticist Изменение кода плагинов никогда не является ответом. Что делать, если код плагина обновляется? Вы должны снова внести свою поправку. Если код был реорганизован много, возможно, вам не удастся внести поправку, которую вы хотели. –

ответ

3

Если плагин не дает вам какое-либо событие, чтобы зацепить, чтобы перед click поднята, вы могли бы использовать вместо mousedown:

$(".datepicker-button").on("mousedown", function(){ 
    // your operations... 
}); 

затем будет уволен click событие плагина, когда кнопка мыши выпущен.

1

Причина, по которой вы не можете поймать событие через jQuery, связана с тем, что компоненты ui5 используют собственную шину событий.

Обычно я бы сказал, что это дело для реализации собственного ui5-контроль, как

sap.ui.commons.DatePicker.extend("your.custom.control", { 
    // your code 
    } 

вы можете легко получить кодирование аккомпанемента, который вы хотите расширить, загрузив ее из вашего браузера через firebug или whateverbrowseryoureusing-инструменты для разработчиков. если вы запустите приложение с параметром sap-ui-debug = true, вы не получите мини-версии. Файлы, которые вы ищете, будут называться DatePicker-dbg.js и DatePickerRenderer-dbg.js.

Приветствия Майкл

 Смежные вопросы

  • Нет связанных вопросов^_^