【问题标题】:Using mouseover in CSS在 CSS 中使用鼠标悬停
【发布时间】:2010-02-03 09:49:08
【问题描述】:

全部,

var a='<div id="details"  onmouseover="tip(this)">';

function tip(el)
{
    $(this).mouseover(function() {
    var b="<div id='test'>"+el.innerHTML+"</div>";
    $(b).css("display", "inline");
    });
}

上面的代码有什么问题吗?我正在尝试在超链接旁边的鼠标悬停上显示 el.innerhtml

【问题讨论】:

  • 如果我们知道你想要发生什么,这可能很容易回答,所以我认为如果你解释你想要做什么会有所帮助。 c0mrade 的回答很好,但是如果没有明确您的最终目标是什么,任何人都很难知道这是否是您真正需要的。上面的代码实际上并没有做任何事情,所以在这种情况下,当有人将鼠标悬停在一个元素上时,很难判断你想要发生什么,如果你能在上面解释一下,我相信你会得到答案正在寻找。
  • 我的要求是,我有一个多选框,并且我有很多数据,所以鼠标悬停在这个数据上就会被调用 var a='
    ';我的要求不是添加标题属性,而是我需要在不同的菜单中显示标题属性
  • 建议您将评论添加到电子邮件正文中。我也注意到你有不投票的倾向。 (62 个问题,1 票)。人们可能对你更慷慨一点,更愿意这样做。

标签: javascript jquery html css


【解决方案1】:

为什么不试试这个呢:

 function tip(el) {
     $(this).mouseover(function() {
     $("#test").html(el.innerHTML);
     $("#test").css("display","inline");
     }); }

【讨论】:

  • 那么你需要澄清你到底想要什么......你的问题似乎是错误的,因此投票失败
【解决方案2】:

尝试扩展您想要的内容。给我们一份要求清单,准确说明您想要什么。如果您这样做,我希望有几个反对票将被撤销。

就我而言,试试这个:

<div id="details">


<script type="text/javascript">
    $(document).ready(function(){
        $("#details").mouseover(function(){
            var $this = $(this);
            $this.append("<div id='test'>"+$this.html()+"</div>");
        });
    })
</script>

显示/隐藏只需调用.show().hide()

如果你真的想要这段代码:

var a='<div id="details"  onmouseover="tip(this)">'; 

那么你将不得不追加到 DOM:

$(document).append('<div id="details">');

然后绑定你的事件:

$("#details").mouseover(function(){

【讨论】:

    【解决方案3】:

    您需要将代码附加到您的页面 DOM 以便它可以显示。目前您创建了一个 div,为其设置了 CSS,但它仍然只在内存中。

    【讨论】:

      【解决方案4】:

      您在函数中使用$(this),也许它应该是$(el)?您还需要执行$('body').append(b); 之类的操作,以将&lt;div&gt; 添加到DOM。

      【讨论】:

      • 输入'you'和'are'有那么难吗?此外,只需在 jQuery 文档中查找 append 就会向您展示大量示例。 api.jquery.com/append
      猜你喜欢
      相关资源
      最近更新 更多
      热门标签