Я создаю плагин расширения для плагина JQuery UI Date Picker, в основном, чтобы просто стандартизировать используемые параметры, а также добавить значок для открытия календаря.Мне известно о том, что плагин использует триггер значков, но это не сработает, поскольку я использую значок в своем изображении спрайта и не хочу дополнительного запроса простой иконки.
Мой код плагина:
(function($) {
$.extend($.fn, {
DatePicker: function() {
return this.each(function() {
$(this).datepicker({
showOtherMonths: true,
selectOtherMonths: true
}).after(
$("<a/>", { "href": "javascript:void(0)", "class": "icon-calendar", "text": "select date" }).click(function() {
$(this).prev("input").datepicker("show")
})
)
})
}
})
})(jQuery);
Это работает для всего, кроме создания иконки, поэтому, чтобы проверить код, я добавил функцию after после инициализации плагина.
$(".date").DatePicker().after(
$("<a/>", { "href": "javascript:void(0)", "class": "icon-calendar", "text": "select date" }).click(function() {
$(this).prev("input").datepicker("show")
})
)
Это то, где это действительно сбивает с толкумне, как этот код работает, чтобы произвести значок календаря.хотя я мог бы заставить его работать таким образом, это, очевидно, не лучший выбор, так как он должен быть частью плагина расширения и не повторяться во всех моих различных реализациях плагина.