【问题标题】:adding value to title attribute in HTML在 HTML 中为 title 属性添加值
【发布时间】:2013-12-11 10:38:20
【问题描述】:

在这里,我尝试将标题动态设置为本机下拉菜单以显示工具提示,但是当我尝试在悬停时设置标题时,我无法从下拉选项中选择任何值。该下拉菜单即将关闭。

$(container).on("hover","select", function (e) {
  $(this).attr("title",$(this).val());
});

这可能是什么原因?

【问题讨论】:

  • 请加个小提琴,还有什么是容器?
  • 容器只是一个父级
    我正在通过大豆模板渲染 DOM,所以我必须做事件委托。
  • 对不起,我忘了说这个问题只发生在 IE8 中。

标签: javascript jquery


【解决方案1】:

$.on("hover") 事件已在 jQuery 1.9 中删除。

你可以试试这个:

$(container).hover(
  function() {
    $(this).attr("title", $(this).val());
  }, function() {
    $(this).attr("title", "");
  }
);

【讨论】:

  • 您的建议可能有效,但我说的是您关于 $.on() 不正确的说法。
  • 我的意思是这样使用“悬停”$(container).on('hover', function(){})这是行不通的
  • 你试过了吗?它确实有效,因此您的陈述是错误的。
  • 致歉。看来你是部分正确的。自 1.9 以来,jQuery 中已弃用“悬停”事件。旧版本工作:jsfiddle.net/zz9kT/2 参考:stackoverflow.com/questions/14830064/…
  • 在我们的项目中,我们使用的是 jquery 1.8.3,所以悬停就是这样。但我的问题是为什么我只有在使用 title 属性时才能从下拉列表中选择值。
【解决方案2】:

尝试mouseenter 事件 - 不确定是否有其他脚本正在关闭下拉菜单

$('body').on("mouseenter", "select", function (e) {
    $(this).attr("title", this.value);
});

演示:Fiddle

【讨论】:

  • 我知道它与鼠标输入一起工作。这个问题发生在鼠标离开和悬停是两者的组合它不起作用。但我只想知道为什么只有“title”属性会导致这个问题。
  • @user3090654 这是hover 事件...你能编辑小提琴来重现问题吗
猜你喜欢
相关资源
最近更新 更多
热门标签