在我的jQuery插件执行流程中,我渲染了这个侧边栏链接列表。
//render method
var render = function(self){
var sidebar = '';
var main = '';
/* Sidebar */
sidebar += '<ul>'
sidebar += '<li><a href="javascript:self.data(activeFolder,1);self.data(render);">Rootobject 1</a></li>';
}
只有我不希望链接打印出self
,但我希望引用self引用的对象。
-------------更新------------
我会尝试以不同的方式解释我的问题。
如果我从页面正文中使用此插件,我可以在init时轻松存储对它的引用
var myPlugin = $('.some-element').myPlugin();
后来这样做:
<a href="javascript:myPlugin.render();">Rootobject 1</a>
现在,我希望我的插件准备相同的链接,那么我如何在插件中编写一个refrence以替换上面这个例子中的myPlugin var?
答案 0 :(得分:0)
您可以通过遵循删除突兀的javascript的最佳做法轻松完成此操作。
您可以设置委托处理程序,以便事件处理不依赖于特定元素。只需在body
元素上设置一个永远不会被添加或删除的处理程序。点击事件最终会冒泡到正文,然后传入选择器,这样您就可以关注符合条件的点击,如下所示:
$("body").on('click', ".sidebar a", function() {
$(this).data(activeFolder, 1)
.data(render);
});