-1

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
4

2 回答 2

0

这是一个工作示例

http://jsfiddle.net/axqCK/1/

$(函数(){

   $(".myBox").click(function(){
       window.location="http://bing.com";
       return false;
   });

});

请记住,某些网站(例如 Google)不允许您在框架内加载。

于 2013-03-07T21:02:58.923 回答
0

假设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;不用说,它不存在。

参考:

于 2013-03-07T21:03:08.417 回答