Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.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
Html 如何将div标记转换为链接_Html_Anchor_Javascript - Fatal编程技术网

Html 如何将div标记转换为链接

Html 如何将div标记转换为链接,html,anchor,javascript,Html,Anchor,Javascript,如何将div标记转换为链接。我希望我的整个div都可以点击。Foo <div style="cursor:pointer;" onclick="document.location='http://www.google.com'">Foo</div> JS: 确保对这些DIV使用cursor:pointer您可以通过添加onclick=“window.location='TARGET URL'”并将其样式设置为“cursor:pointer”,使整个DIV功能成为链接。但

如何将div标记转换为链接。我希望我的整个div都可以点击。

Foo
<div style="cursor:pointer;" onclick="document.location='http://www.google.com'">Foo</div>
JS:


确保对这些DIV使用
cursor:pointer

您可以通过添加onclick=“window.location='TARGET URL'”并将其样式设置为“cursor:pointer”,使整个DIV功能成为链接。但这样做通常不是个好主意,因为搜索引擎将无法跟踪结果链接,读者将无法在选项卡中打开或复制链接位置,等等。相反,您可以创建一个常规锚定标记,然后将其样式设置为display:block,然后将其样式设置为DIV。

内容在这里
<div style="cursor:pointer" onclick="document.location='http://www.google.com'">Content Goes Here</div>

不要这样做。

  • 如果需要链接,请将内容包装在适当的
    NCHOR
  • 如果要将
    转换为链接,请使用“Javascript”将
    包装在
    NCHOR中
  • 如果要在单击
    时执行某些操作,请使用
    onclick
    事件处理程序。。。不要称之为“链接”

    • 您可以使用Javascript来实现此效果。如果你使用一个框架,这类事情就会变得非常简单。以下是中的一个示例:


      此解决方案的显著优点是不在标记中保留逻辑。

      如果必须在div内设置锚定标记,还可以使用CSS通过display:block设置锚定以填充div

      因此:

      <div style="height: 80px"><a href="#" style="display: block">Text</a></div>
      
      
      

      现在,当用户在该div中浮动光标时,锚定标记将填充该div。

      如果您使用的是HTML5,如前所述,您可以将
      div
      放在
      a
      中:

      <a href="http://www.google.com"><div>Some content here</div></a>
      
      
      

      预先输入此方法,因为它在您的结构中清楚地表明,所有内容都是可单击的,以及它指向的位置。

      所以您希望元素是它不是的东西

      一般来说,这不是一个好主意。如果需要链接,请使用链接。大多数情况下,只在它所属的位置使用适当的标记更容易

      总而言之,有时候你不得不打破规则。现在,这个问题没有了,所以我要在这里声明:

      如果不使用链接(或类似链接,例如只包含提交按钮的
      )或使用JavaScript,则不能让
      充当链接。

      从这里开始,这个答案将假设JavaScript是允许的,而且正在使用jQuery(为了示例的简洁性)

      说了这么多,让我们深入了解链接是如何形成的


      链接通常是您单击以导航到新文档的元素

      这似乎很简单。侦听单击事件并更改位置:

      不要这样做
      $('.link')。在('click',函数(){
      window.location=http://example.com';
      });
      
      
      
      伪链接
      请记住,搜索蜘蛛不会为JS代码编制索引。因此,如果您将
      URL
      放在JS代码中,并确保将其包含在页面其他地方的传统HTML链接中


      也就是说,如果你想让链接的页面被谷歌等编入索引。

      如果我没有错误地理解jQuery示例,HTML的结构必须是这样的:是的,这可能是一种更好的方式。在Firefox3.5和IE8中,我必须在锚标签中添加“height:100%;”才能占据整个DIV高度。对JavaScript解决方案有很大的替代性。这是最简单和最适合搜索引擎优化的答案。看一看,@ Peer-to提供了迄今为止最好的解决方案。考虑向你的答案添加一个解释,以帮助保持学习的资源,而不仅仅是答案。
      $('div#id').click(function (e) {
        // Do whatever you want
      });
      
      <div style="height: 80px"><a href="#" style="display: block">Text</a></div>
      
      <a href="http://www.google.com"><div>Some content here</div></a>