Моя проблема заключается в следующем коде! Я хочу расширить объект jQuery на объект XjQuery, и я, похоже, работаю. но в каждой функции, где я найду объект, функция myfunc не объявлена что здесь не так?расширить объект jQuery до моего собственного объекта
возгласы и
жаль мой бедный английский
XjQuery = function()
{
var jq = $("<div id=xjq>hallo</div>");
$.extend(this, jq);
}
XjQuery.prototype.myfunc = function() {
this.append("<p>myfunc called</p>");
}
xjq = new XjQuery();
xjq.myfunc(); // this works
$("#maindiv").append(xjq); // works also
$("#maindiv").find("#xjq").each(function() {
$(this).myfunc(); // doesn't work
});
Rocket является правильным, право способ добавления расширений в jQuery через плагины. Эти расширения будут отображаться как обычные методы для объекта '$'. Например, '$ ('# a-div-id'). MyPluginMethod (anArgument, anotherArgument)' –
Я забыл упомянуть [документацию jQuery для плагинов] (http://docs.jquery.com/Plugins/Authoring). –
Мое расширение - это просто пример. У меня больше разных объектов, которые будут расширены из jQuery, и каждый объект имеет разные функции-члены. – helmi