Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery div可单击并跟随子URL_Javascript_Jquery_Html - Fatal编程技术网

Javascript jQuery div可单击并跟随子URL

Javascript jQuery div可单击并跟随子URL,javascript,jquery,html,Javascript,Jquery,Html,有人能给我解释一下为什么这样不行吗 很抱歉,我完全是javascript+jQuery的初学者 代码如下: Javascript/jQuery: <script type="text/javascript"> $('.clickk').click(function(e){ window.location.href = $(this).find('a').attr('href'); }); </script> <div clas

有人能给我解释一下为什么这样不行吗

很抱歉,我完全是javascript+jQuery的初学者

代码如下:

Javascript/jQuery:

<script type="text/javascript"> 
    $('.clickk').click(function(e){
        window.location.href = $(this).find('a').attr('href');
    });
</script>
 <div  class="clickk" >
    <a href="google.com">link</a>
    blah blah blah.
 </div>

$('.clickk')。单击(函数(e){
window.location.href=$(this.find('a').attr('href');
});
HTML:

<script type="text/javascript"> 
    $('.clickk').click(function(e){
        window.location.href = $(this).find('a').attr('href');
    });
</script>
 <div  class="clickk" >
    <a href="google.com">link</a>
    blah blah blah.
 </div>

废话废话。
请帮我找到我丢失的东西

提前谢谢。希望问题清楚。

用这个

$(document).ready(function(){    
    $('.clickk').click(function(e){
        window.location.href = $(this).find('a').attr('href');}
    });
)});
用这个

$(document).ready(function(){    
    $('.clickk').click(function(e){
        window.location.href = $(this).find('a').attr('href');}
    });
)});
而不是

 href="google.com" // This is a relative url
试一试

还将其封装在DOM就绪事件中。。可能在元素进入DOM之前就已经执行了脚本。。这确保在DOM中的元素可用后附加事件

<script type="text/javascript"> 
 $(function() {
    $('.clickk').click(function(e){
       window.location.href = $(this).find('a').attr('href');
    });
  });
</script>

$(函数(){
$('.clickk')。单击(函数(e){
window.location.href=$(this.find('a').attr('href');
});
});
而不是

 href="google.com" // This is a relative url
试一试

还将其封装在DOM就绪事件中。。可能在元素进入DOM之前就已经执行了脚本。。这确保在DOM中的元素可用后附加事件

<script type="text/javascript"> 
 $(function() {
    $('.clickk').click(function(e){
       window.location.href = $(this).find('a').attr('href');
    });
  });
</script>

$(函数(){
$('.clickk')。单击(函数(e){
window.location.href=$(this.find('a').attr('href');
});
});
试试这个

使用就绪事件

<script> 
 $(document).ready(function() {
    $('.clickk').click(function(e){
       window.location.href = $(this).find('a').attr('href');
    });
  });
</script>

$(文档).ready(函数(){
$('.clickk')。单击(函数(e){
window.location.href=$(this.find('a').attr('href');
});
});
试试这个

使用就绪事件

<script> 
 $(document).ready(function() {
    $('.clickk').click(function(e){
       window.location.href = $(this).find('a').attr('href');
    });
  });
</script>

$(文档).ready(函数(){
$('.clickk')。单击(函数(e){
window.location.href=$(this.find('a').attr('href');
});
});
两个可能的问题:

  • 您可能是在DOM中存在任何具有该类的元素之前执行该脚本的(下面将详细介绍)

  • href
    应该以
    http://
    开头,例如,
    href=”http://www.google.com“
    href=”http://google.com“
    。只是
    href=“google.com”
    使其成为一个相对链接,无法可靠工作

  • 假设您修复了#2,下面是关于#1的一些细节:

    不起作用:

    <!-- ... -->
    <head>
    <!-- ... -->
    <script type="text/javascript"> 
      $('.clickk').click(function(e){
         window.location.href = $(this).find('a').attr('href');
      });
    </script>
    </head>
    <body>
    <!-- ... -->
    <div  class="clickk" >
       <a href="http://google.com">link</a>
       blah blah blah.
    </div>
    
    请注意,将函数传递到
    jQuery
    (或传递到
    $
    ,这只是
    jQuery
    的别名,除非您使用
    noConflict
    )与将函数传递到
    $(document)相同。ready(…)
    ;详细信息:

    两个可能的问题:

  • 您可能是在DOM中存在任何具有该类的元素之前执行该脚本的(下面将详细介绍)

  • href
    应该以
    http://
    开头,例如,
    href=”http://www.google.com“
    href=”http://google.com“
    。只是
    href=“google.com”
    使其成为一个相对链接,无法可靠工作

  • 假设您修复了#2,下面是关于#1的一些细节:

    不起作用:

    <!-- ... -->
    <head>
    <!-- ... -->
    <script type="text/javascript"> 
      $('.clickk').click(function(e){
         window.location.href = $(this).find('a').attr('href');
      });
    </script>
    </head>
    <body>
    <!-- ... -->
    <div  class="clickk" >
       <a href="http://google.com">link</a>
       blah blah blah.
    </div>
    
    请注意,将函数传递到
    jQuery
    (或传递到
    $
    ,这只是
    jQuery
    的别名,除非您使用
    noConflict
    )与将函数传递到
    $(document)相同。ready(…)
    ;详细信息:

    只需添加我的两位。 您可以使用以下代码。虽然其他人给出的答案也适用于您(就我个人而言,我不喜欢使用window.location.href:)

    
    $(文档).ready(函数(){
    $('.clickk')。单击(函数(e){
    $(this)。查找('a')[0]。单击();
    });
    });
    废话废话。
    ?
    
    只需添加我的两位。 您可以使用以下代码。虽然其他人给出的答案也适用于您(就我个人而言,我不喜欢使用window.location.href:)

    
    $(文档).ready(函数(){
    $('.clickk')。单击(函数(e){
    $(this)。查找('a')[0]。单击();
    });
    });
    废话废话。
    ?
    
    您希望此代码做什么?正常情况下,链接会正常工作。您是否尝试将代码放入就绪事件中?很简单!当我点击div时,它应该跟随里面的锚元素,因此在本例中转到google.com。试着把它放在ready事件中(正如下面许多人所建议的那样)。你希望这段代码做什么?正常情况下,链接会正常工作。您是否尝试将代码放入就绪事件中?很简单!当我单击div时,它应该跟随里面的锚元素,因此在本例中转到google.com。尝试将它放入ready事件中(正如下面许多人所建议的)。当然,当你向他的代码中添加
    $(function(){
    ,那么他就丢失了
    })
    当然,当你向他的代码中添加
    $(function(){
    ,那么他就丢失了
    })
    哦,谢谢你。。。但是这和$(“文档”)有什么区别呢?ready(function())都是一样的。这只是$(“文档”)的缩写。ready(function())哦,谢谢。但是这和$(“文档”)有什么区别呢。ready(function()?都是一样的。这只是$(“文档”)的缩写。ready(function():)@downvoter没有必要进行downvote..难道代码不起作用吗?或者我没有提到我只是在添加我的两个位..你可以指出你不喜欢的地方!FWIW,“只是添加我的两个位”听起来它应该是一个注释,而不是一个答案。你的答案实际上并没有回答这个问题,它建议用一种不同的方式来做一些与问题中的代码无关的事情。此外,我不会依赖于在链接后面的锚元素上调用
    单击
    的未记录行为,而不是well supported
    位置
    对象的行为。但除此之外…:-)是的,更像是这样。!:):@downvoter不需要向下投票。。代码不起作用吗?或者我没有提到我只是在添加我的两个位吗??。。你本可以指出你不喜欢的东西!。。FWIW,“只是添加我的两个比特”听起来应该是一个评论,而不是一个答案。你的答案不真实