【问题标题】:Hover Over to Pause Marquee悬停在暂停选取框
【发布时间】:2011-09-17 04:19:53
【问题描述】:

我想创建一个滚动一些新闻文章的选框,但是当用户将鼠标悬停在它上面时,我需要它暂停,当用户悬停在它之外时(onMouseOut)我需要重新启动。这不起作用:

<marquee onMouseOver="this.stop()" onMouseOut="this.start()">Text</marquee>

有人对我如何用最少的代码实现这一点有任何建议吗?

【问题讨论】:

  • 你说它不起作用是什么意思?它对我来说工作正常。

标签: javascript jquery html css marquee


【解决方案1】:
<marquee onmouseover="this.stop();" onmouseout="this.start();">
my text here
</marquee>

你使用了错误的大小写:onMouseOver,onMouseOut

【讨论】:

  • 即使使用小鼠标悬停显示this.stop()也不是函数错误。
  • 这个方案比使用jquery函数好。
  • 为我工作(在 chrome 和 internet explorer 10 中测试)
【解决方案2】:

marquee 标签有一个名为scrollamount 的属性,它控制它的运行速度。我们需要做的就是在鼠标悬停时将值设置为0,并在鼠标移出时将其设置回5

演示:http://jsfiddle.net/U9yFj/

$(function() {
    $('marquee').mouseover(function() {
        $(this).attr('scrollamount',0);
    }).mouseout(function() {
         $(this).attr('scrollamount',5);
    });
});

【讨论】:

  • 是的,字幕已经过时,但对于新闻滚动总是有用的 ^.^ 为简单的网站添加快速简便的功能。谢谢! ~ 另一方面,我认为 marquee 现在已经贬值了(?)
  • 别敲老搭档了,我就是这样
  • 那请问marquee合适的vreplacemnet是什么?
【解决方案3】:

<marquee behavior="scroll" direction="left" onmouseover="this.stop();" onmouseout="this.start();">
    Go on... hover me (and hold the mouse over)!
</marquee>

【讨论】:

    【解决方案4】:
    <marquee behavior="scroll" scrollamount="5" direction="left" onmouseover="this.setAttribute('scrollamount',0);" onmouseout="this.setAttribute('scrollamount',5);">
     Your name, your address, your details scrolling through line
    </marquee>
    

    希望这段代码对使用 MARQUEE 标签的人有所帮助。

    【讨论】:

      【解决方案5】:
      <marquee id="mq" direction="right" loop="true" onmouseover="this.stop();" onmouseout="this.start();">
          <a href="http://google.com">Google</a>
          <input type="text" id="txt" />
          <input type="button" id="btn" value="Click here" onclick="alert(txt.value);" />
          Some other text here</marquee>
      

      【讨论】:

      • marquee 元素从未成为任何 HTML 标准的一部分,并且可以肯定的是,HTML5 规范将其标记为已过时。请不要更新有关长期过时、未指定、永远不会使用的元素的问题。
      【解决方案6】:

      您可以简单地使用 HTML 字幕标记

      onmouseover="stop()"
      

      紧随其后

      onmouseout="start()"
      

      【讨论】:

      • 请在此处写下解决方案,而不是包含将来可能会损坏的链接。谢谢!
      • 感谢您的建议。从现在开始会这样做。根据问题,它基本上是选框 onmouseover="start()" onmouseout="stop()" 。但是我提供的链接有所有其他选项,例如方向、速度和行为操作。
      【解决方案7】:

      您必须在关闭() 后将; 添加到您的代码中。

      【讨论】:

      • 不,Javascript 甚至可以在没有分号的情况下工作。而且你不应该在onclickonmouseover等标签事件之后加上分号...
      猜你喜欢
      • 2023-03-11
      • 2014-06-19
      • 2012-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多