http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js
$(".myBox").click(function(){
window.location=$(this).attr("http://google.com");
return false;
});
div width="200px" height="200px" class="myBox">ggg
div
http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js
$(".myBox").click(function(){
window.location=$(this).attr("http://google.com");
return false;
});
div width="200px" height="200px" class="myBox">ggg
div
这是一个工作示例
$(函数(){
$(".myBox").click(function(){
window.location="http://bing.com";
return false;
});
});
请记住,某些网站(例如 Google)不允许您在框架内加载。
假设div
您单击的中有一个属性(我想不出一个div
元素的有效属性来包含一个href
值,但无论如何):
<!-- the following is an invalid use of a `href` attribute, please never do this -->
<div class="myBox" href="http://google.com/">http://google.com/</div>
$(".myBox").click(function(){
var newURL = $(this).attr('href'),
newWindow = window.open(newURL, 'newWindowName');
return false;
});
如果您正在使用自定义data-*
属性(如果您正在这样做,您应该这样做):
<div class="myBox" data-href="http://google.com/">http://google.com/</div>
$(".myBox").click(function(){
var newURL = $(this).data('href'),
newWindow = window.open(newURL, 'newWindowName');
return false;
});
如果您使用的文本div
:
<div class="myBox">http://google.com/</div>
$(".myBox").click(function(){
var newURL = $(this).text().trim(),
newWindow = window.open(newURL, 'newWindowName');
return false;
});
您的代码不起作用的原因是这一行:
window.location = $(this).attr("http://google.com");
attr()
是 getter 或 setter;获取属性的值:
window.location = $(this).attr('nameOfAttribute');
要设置属性的值:
window.location = $(this).attr('nameOfAttribute', 'valueOfAttribute');
您在代码中试图检索属性的值http://google.com
;不用说,它不存在。
参考: