【问题标题】:How to simulate anchor tag hover and click on a div如何模拟锚标签悬停并单击 div
【发布时间】:2012-08-21 11:32:05
【问题描述】:

如何使用 jquery 在 div 上的另一个网页上启动悬停指针和点击功能?

所以,我的 div 类是 .ei-title:

$('.ei-title').click(function() {
   /* load the page 'http://google.com' in the same window */
});

此外,当您将鼠标悬停在 div 元素上时,它应该会显示一个指针

谢谢!

【问题讨论】:

    标签: jquery


    【解决方案1】:

    我认为您希望div 的行为类似于<a href>。如果是这样,方法如下: 光标的 CSS:

    div.ei-title {
      cursor: pointer;
    }
    

    JavaScript:

    $('.ei-title').click(function(){
      location = 'http://www.google.com'
    })
    

    【讨论】:

    • 谢谢亚伯拉罕,感激不尽。你是不是错过了一个 ;在函数的末尾(在 'href' 和 {)... 之后)?
    • 在 Javascript 中,您不需要 分号。我知道您应该使用它们,但我通常不使用。无论有没有分号,代码都可以正常工作。
    • 另一件事,光标:指针在 chrome 中不起作用(我有最新的)...有什么建议吗?
    • 是的,jQuery 是 Javascript,所以 Javascript 语法也适用于 jQuery。关于光标:适用于我,非常快速的演示:jsfiddle.net/c2qFy
    • 是的,谢谢,虽然不确定...是的,光标在 jsfiddle 中工作,虽然在我的网站上,div 在 jquery 滑块中,它在 FF 和 IE 中工作,只是不是在 IE 中...奇怪
    【解决方案2】:
    $('.ei-title').css('cursor', 'pointer').click(function(event) {
        event.preventDefault();
        event.stopImmediatePropagation();
    
        window.location = 'http://www.google.com';   
    });
    

    虽然确实应该将 css 移出到样式表中,而不是通过 javascript 应用。

    【讨论】:

    • 感谢您的回答...光标:指针在 chrome 中不起作用(我有最新的)...有什么建议吗?
    • event.preventDefault(); 做什么而 event.stopImmediatePropagation() 呢?
    • 它们都停止事件的默认操作并阻止它冒泡 - 在您的情况下,在 div 上使用它不会做任何事情,因为 div 没有默认操作。但是,如果您想将其应用于已完成的操作,例如锚标记,它就在那里。
    • chrome 的东西可能是 Chrome 本身的一个错误:[link]code.google.com/p/chromium/issues/detail?id=80339
    猜你喜欢
    • 2012-11-07
    • 1970-01-01
    • 2016-06-07
    • 1970-01-01
    • 2017-06-23
    • 1970-01-01
    • 2011-08-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多