这是一款非常简单的jQuery文字跑马灯特效插件。该跑马灯特效使文本从右向左不停循环,当鼠标放到跑马灯上的文字时,跑马灯会暂停运动。
使用方法
使用该跑马灯特效之前要先引入jQuery和marquee.js文件。
<script src="jquery-1.11.2.min.js"></script>
<script src="marquee.js"></script>                
              
              HTML结构
跑马灯中的文字使用无序列表来制作,外面使用一个<div>作为包裹容器。
<div class="container">
  <div class="marquee-sibling"> Breaking News </div>
  <div class="marquee">
    <ul class="marquee-content-items">
      <li>Item 1</li>
      <li>Item 2</li>
      <li>Item 3</li>
      <li>Item 4</li>
      <li>Item 5</li>
    </ul>
  </div>
</div>         
              
              CSS样式
下面是该跑马灯特效的一些基本样式。
.container {
  width: 100%;
  background: #4FC2E5;
  float: left;
  display: inline-block;
  overflow: hidden;
  box-sizing: border-box;
  height: 45px;
  position: relative;
  cursor: pointer;
}
.marquee-sibling {
  padding: 0;
  background: #3BB0D6;
  width: 20%;
  height: 45px;
  line-height: 42px;
  font-size: 12px;
  font-weight: normal;
  color: #ffffff;
  text-align: center;
  float: left;
  left: 0;
  z-index: 2000;
}
.marquee,
*[class^="marquee"] {
  display: inline-block;
  white-space: nowrap;
  position: absolute;
}
.marquee { margin-left: 25%; }
.marquee-content-items {
  display: inline-block;
  padding: 5px;
  margin: 0;
  height: 45px;
  position: relative;
}
.marquee-content-items li {
  display: inline-block;
  line-height: 35px;
  color: #fff;
}
.marquee-content-items li:after {
  content: "|";
  margin: 0 1em;
}
          
              
              初始化插件
在页面加载完毕之后,可以通过下面的方法来初始化该跑马灯插件。
$(function (){
  createMarquee();
});
                
              
              配置参数
下面是该跑马灯特效的可用配置参数。
$(function (){
  createMarquee({
    
    // controls the speed at which the marquee moves
    duration:30000, 
    // right margin between consecutive marquees
    padding:20, 
    // class of the actual div or span that will be used to create the marquee - 
    // multiple marquee items may be created using this item's content. 
    // This item will be removed from the dom
    marquee_class:'.example-marquee', 
    // the container div in which the marquee content will animate. 
    container_class: '.example-container', 
    // a sibling item to the marqueed item  that affects - 
    // the end point position and available space inside the container. 
    sibling_class: '.example-sibling', 
    // Boolean to indicate whether pause on hover should is required. 
    hover: false
  });
});