4

那么继承人我的问题。假设我有 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;

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

我该怎么做?

谢谢,托尼

4

4 回答 4

8

解决条件部分

JS

var el = $('your element');
if (el.get(0).scrollWidth > el.width()) {
    // Your marquee code here
}
于 2009-05-07T16:54:27.923 回答
3
$(function(){
  $box = $('div.box');
  $box.children().each(function(){
    if ($box.width() < $(this).width()) {
      $(this).wrap('<marquee>');
    }
  )};
});

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

于 2009-05-07T16:51:20.490 回答
1

条件部分可以像rennat建议的那样轻松解决。

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

于 2009-10-13T08:43:21.633 回答
0

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

(还要注意 marquee 是一个非标准的 HTML 标签。)

于 2009-05-07T16:53:27.037 回答