在生成的 div 中调用 jQuery [关闭]
Posted
技术标签:
【中文标题】在生成的 div 中调用 jQuery [关闭]【英文标题】:jQuery calls inside an generated div [closed] 【发布时间】:2012-08-27 15:31:48 【问题描述】:我正在尝试从生成到 div 的按钮中捕获事件(由另一个 jQuery 调用提供)。我想知道 jQuery 调用应该在哪里?进入主页面还是进入之前的 jQuery 调用生成的 html?
另外,jQuery 是如何处理同名对象的?
谢谢!
【问题讨论】:
您需要发布您正在使用的代码以获得一些帮助。 好吧,代码在不同的页面中,我只是想知道我应该把ready函数放在哪里。 【参考方案1】:如果您正在处理现在或将来退出的对象,则必须使用 live 函数来附加您的事件:
http://api.jquery.com/live/
说明:为现在和将来匹配当前选择器的所有元素附加一个事件处理程序。
如果您有多个与选择器匹配的对象,您将获得一个对象数组
【讨论】:
【参考方案2】:使用jsFiddle 创建一个示例。目前很难说你的问题是什么。
要回答您的第一个问题,您可以在“主页”和“生成的 html”中注册您的事件,具体取决于任务。而且由于没有代码/示例,我无法判断哪个更适合您。
问题“jQuery 如何处理具有相同名称的对象?”真的没有意义。 JQuery 是一个 javascript 库,而 JavaScript 与任何其他编程语言一样,每个对象都有一个唯一的名称。也许您的意思是元素类名,jQuery 将它们视为元素的集合。
【讨论】:
【参考方案3】:如果要将事件绑定到尚不存在的内容,则可以将其放在生成的 html 中。
像这样:
$("#generatedButton").on("click",function()
//do something..
);
或
你可以把它放在主页面中,将事件绑定到已经存在的更高的包装器上,并单独指定事件目标
像这样:
$("#mainWrapper").on("click", "#generatedButton" , function()
//do something..
);
所有这些都使用.on()
。
【讨论】:
以上是关于在生成的 div 中调用 jQuery [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
jQuery 面板 - 在打开另一个 DIV 之前切换一个 DIV 关闭!