如何使预先打开的div在新选项卡/链接中打开?
问题描述:
如何让div打开一个新的链接,当它有一个函数或onclick挂钩它?我一直在尝试以下内容,但似乎没有任何工作,但分区从不包含新的链接。如何使预先打开的div在新选项卡/链接中打开?
jQuery.prepend('<div class="dropdown">' + r + closer + "</div>"))
我试着添加JavaScript,使bugme类包括一个新的链接,但至今没有运气..
jQuery(".dropdown").on("click", function(e) {
location.href = "www.google.com.com";
}
我也试过,包括代码onclick="location.href='http://www.google.com';"
,但它没有工作,为什么下面的代码不允许新的链接?
答
由于您的.dropdown
是动态添加元素你需要什么是所谓event delegation
。而不是location.href
使用window.open
。所以,下面写click event
:
jQuery(document).on("click",".dropdown", function(e) {
window.open('http://www.google.com', '_blank')
}
答
$('body').append($('<div class="dropdown">Click me</div>'));
jQuery(".dropdown").on("click", function(e) {
location.href = "www.google.com.com";
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
这个还曾尝试
答
仅供参考;
此代码亘古不工作
jQuery(".dropdown").on("click", function(e) {
location.href = "www.google.com.com";
}
原因:
了jQuery没有与dropdown
类中的任何元素的概念,因为它插在运行时和新添加的项事件处理程序不分配。
委托事件的优点是它们可以处理后来添加到文档中的后代元素的事件。通过选择在委托事件处理程序附加时保证存在的元素,可以使用委派事件来避免频繁附加和删除事件处理程序的需要。
此处document
对象保证始终存在。
jQuery(document).on("click", ".dropdown", function(e) {