中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

jQuery滾動新聞實現代碼
來源:易賢網 閱讀:1076 次 日期:2016-07-12 15:10:40
溫馨提示:易賢網小編為您整理了“jQuery滾動新聞實現代碼”,方便廣大網友查閱!

這篇文章主要為大家詳細介紹了jQuery滾動新聞實現代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下

網上下載了一個Jquery新聞滾動Demo,效果不錯。我根據自己情況,做了些調整。

下載后,除了Html及Jquery.js,還有三個文件,分別是Css,主Js和一個定位Js(jquery.dimensions.js),Css文件完全可以通過動態賦值實現,省的在Css文件中添加了,況且可以重定義,應該效果更好。

定位Js只用到一個方法,我把它整合到之中了,少加載一個是一個么。

原Demo是一行顯示的滾動效果,有一個Bug,即不等的多行顯示時會跑錯,已修復。

原Demo有一個mouseover屬性,我一般不用(效果不好,看一下實現方法也有漏洞,在多行時效果更差),刪除了。

借鑒別人的思路與代碼,不敢獨享。

刪除的部分:

$('> ul', this)

 .bind('mouseover', function(e) {

  if ($(e.target).is('li')) {

   $(e.target).addClass('hover');

  }

 })

 .bind('mouseout', function(e) {

  if ($(e.target).is('li')) {

   $(e.target).removeClass('hover');

  }

 });

調整后代碼:

html部分:

<div id="tbNews">

<ul>

 <li>1、滾動新聞,滾動新聞,滾動新聞,滾動新聞,滾動新聞</li>

 <li>2、滾動新聞,滾動新聞</li>

 <li>3、滾動新聞,滾動新聞,滾動新聞,滾動新聞</li>

 <li>4、滾動新聞,滾動新聞,滾動新聞,滾動新聞,滾動新聞</li>

 <li>5、滾動新聞</li>

</ul>

</div>

<script language="JavaScript" src="jdNewsScroll.js" type="text/javascript">

</script>

<script defer="defer" language="JavaScript" type="text/javascript">

$(function() {

 $('#tbNews').jdNewsScroll({divWidth:130,divHeight:50,fontSize:'10.5pt'});

});

</script>

Js代碼:

(function($){

  var ELMS = [];

  $.fn.jdNewsScroll = function(settings) {

  settings = $.extend({}, arguments.callee.defaults, settings);

 $(this).css({"position":"relative","overflow":"hidden","width":settings.divWidth,"height":settings.divHeight});

 $(this).find("ul").css({"position":"relative","list-style-type":"none","font-size":settings.fontSize,"margin":"0px"});

 $(this).find("li").css({"line-height":"130%","margin":"0px","padding":"2px 10px 1px 10px"});

  $(this).each(function(){

   this.$settings = settings;

   this.$pause = false;

   this.$counter = settings.beginTime;

   $(this).hover(function(){ $(this).jdNewsScrollPause(true) }, function(){ $(this).jdNewsScrollPause(false) });

   ELMS.push(this);

  });

  return this;

 };

 $.fn.jdNewsScroll.defaults = {

  beginTime: 10,

  fontSize: '9pt',

  divWidth: '100%',

  divHeight: '200px',

  lineHeight: '130%',

  delay:  20,

  step: 2

 };

 $.fn.jdNewsScrollPause = function(pause) {

  return this.each(function() {

   this.$pause = pause;

  });

 }

 function outerHeight(options) {

  if (!this[0]) 0;

  options = $.extend({ margin: false }, options || {});

  return this[0] == window || this[0] == document ?

   this.height() : this.is(':visible') ?

    this[0].offsetHeight + (options.margin ? (num(this, 'marginTop') + num(this, 'marginBottom')) : 0) :

    this.height() 

     + num(this,'borderTopWidth') + num(this, 'borderBottomWidth') 

     + num(this, 'paddingTop') + num(this, 'paddingBottom')

     + (options.margin ? (num(this, 'marginTop') + num(this, 'marginBottom')) : 0);

 }

 setInterval(scroll, 80);

 function scroll() {

  for (var i = 0; i < ELMS.length; i++) {

   var elm = ELMS[i];

   if (elm && !elm.$pause) {

    if (elm.$counter == 0) {

     var ul  = $('> ul', elm)[0];

     if (!elm.$steps) {

      elm.$steps = $('> li:first-child', ul).outerHeight();

      elm.$step = 0;

     }

     if ((elm.$steps + elm.$step) <= 0) {

      elm.$counter  = elm.$settings.delay;

      elm.$steps   = false;

      $(ul).css('top', '0').find('> li:last-child').after($('> li:first-child', ul));

      $('> *', ul).not('li').remove();

     } else {

      elm.$step -= elm.$settings.step;

      if (-elm.$step > elm.$steps) {

       elm.$step = -elm.$steps;

      }

      ul.style.top = elm.$step + 'px';

     }

    } else {

     elm.$counter--;

    }

   }

  }

 };

})(jQuery);

以上就是本文的全部內容,希望對大家的學習有所幫助

更多信息請查看網絡編程
易賢網手機網站地址:jQuery滾動新聞實現代碼
由于各方面情況的不斷調整與變化,易賢網提供的所有考試信息和咨詢回復僅供參考,敬請考生以權威部門公布的正式信息和咨詢為準!

2026國考·省考課程試聽報名

  • 報班類型
  • 姓名
  • 手機號
  • 驗證碼
關于我們 | 聯系我們 | 人才招聘 | 網站聲明 | 網站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機站點 | 投訴建議
工業和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
云南網警備案專用圖標
聯系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權所有:易賢網
云南網警報警專用圖標
主站蜘蛛池模板: 潮州市| 林周县| 昂仁县| 平利县| 洞口县| 若尔盖县| 颍上县| 广东省| 沁阳市| 辰溪县| 钦州市| 武陟县| 三江| 松潘县| 缙云县| 疏附县| 大兴区| 漳平市| 九龙坡区| 台前县| 广宗县| 绍兴县| 鹤山市| 桂阳县| 兴和县| 巴彦淖尔市| 万荣县| 邢台市| 长沙市| 灯塔市| 隆化县| 东安县| 鄂温| 中超| 六安市| 长泰县| 烟台市| 阳新县| 仙桃市| 保康县| 寿光市|