文本溢出时的字幕文本

时间:2009-05-07 16:22:31

标签: javascript jquery html css marquee

好吧,继续我的问题。假设我有3个div标签,都是100像素宽:

<--- DIV WIDTH --->
Text in div 1
Text in div two, it overflows
Text in div three
<--- DIV WIDTH --->

现在,我现在有这个div的css:

width:100px;
overflow:hidden;

我想要做的是如果文本溢出,它会像一个选框一样滚动,所以如果你稍等一下就可以看到所有的文字。但是我只希望字幕显示文本是否溢出。

我该怎么做?

Thx,Tony

4 个答案:

答案 0 :(得分:8)

解决条件部分

JS

var el = $('your element');
if (el.get(0).scrollWidth > el.width()) {
    // Your marquee code here
}

答案 1 :(得分:3)

$(function(){
  $box = $('div.box');
  $box.children().each(function(){
    if ($box.width() < $(this).width()) {
      $(this).wrap('<marquee>');
    }
  )};
});

可以在jQuery中工作(我还没有检查过。如果你有任何问题,请回复)。或者,您可以在css中设置scroll属性。

答案 2 :(得分:1)

条件部分可以像rennat一样轻松解决。

你有可能使用jQuery吗?如果是,请构建与jQuery marquee plugin兼容的html,并调用$(element).marquee();为了动画。它比'<marquee>'标签更好,因为它只使用具有适当css属性的div(避免使用非标准标签)。

答案 3 :(得分:0)

这对于你所描述的问题(div中的纯文本)不起作用,但如果这只是一个小例子,你可以使用overflow: auto,如果它溢出,将添加一个水平滚动条。

(另请注意,marquee是非标准的HTML标记。)