成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

layui-v2.4.5 兼容性微調(diào)

JerryWangSAP / 1060人閱讀

摘要:解決尋找到每一個,添加上即可。解決因為內(nèi)部使用到了,它在這兩款表現(xiàn)不同于谷歌?,F(xiàn)在通過計算內(nèi)部的文字長度來推算像素?;鸷椭凶煮w的長度就是雙字節(jié)文字按基礎(chǔ)像素計算,單字節(jié)文字接觸像素。

在 layui 的社區(qū)已經(jīng)寫過了,但是社區(qū)的編輯器實在不行,在此重新書寫一遍,正好可以鞏固下
table.js

描述:【所有瀏覽器】 加載圖標(biāo)是靜止的,想要做成動畫。

解決:尋找到每一個layui-icon-loading,添加上 class layui-anim layui-anim-rotate layui-anim-loop即可。

描述:【火狐和IE10+】單元格內(nèi)如果是純文本,那么后面的省略的字?jǐn)?shù)需要達(dá)到 3 個字符以上才會觸發(fā) layer.tips 彈窗。

解決:因為內(nèi)部使用到了scrollWidth,它在這兩款表現(xiàn)不同于谷歌?,F(xiàn)在通過計算內(nèi)部的文字長度來推算像素。

// 源碼 table.js 1600 左右開始
var othis = $(this)
,elemCell = othis.children(ELEM_CELL);
// m
var computedFontWidth = function() {
  var fontSize = parseFloat(elemCell.css("font-size"))
  var text = elemCell.text()
  var width = 0, i = 0, len = text.length
  while ( i < len) {
    // 基礎(chǔ)像素,我的是 14px,不知道可以看 html 或者 body 內(nèi)的字體大小設(shè)置。
    // 火狐和IE中字體的長度就是雙字節(jié)文字按基礎(chǔ)像素計算,單字節(jié)文字接觸像素/2。
    // 谷歌比較另類,雙字節(jié)文字按基礎(chǔ)像素計算,單字節(jié)是基礎(chǔ)像素/2與 16/2 的差值,
    // 不知道是不是我想復(fù)雜了,所以用 +1,微調(diào)下瀏覽器的差異
    width += text.charAt(i).match(/[^x00-xff]/ig) != null ? fontSize : (fontSize / 2 + 1)
    i++
   }
  return width
}

var computedScrollWidth = function() {
  var hasChildren = elemCell.children().length > 0
  var originScrollWidth = elemCell.prop("scrollWidth")
  var realScrollWidth = hasChildren 
    ? 0
    : (computedFontWidth() + parseFloat(elemCell.css("padding-left")) + parseFloat(elemCell.css("padding-right")))
  // 這里比較大小值,為了對于原來非純文本還是采用 layui 原本的方式
  return Math.max(originScrollWidth, realScrollWidth)
}

if(hide){
  othis.find(".layui-table-grid-down").remove();
// } else if(elemCell.prop("scrollWidth") > elemCell.outerWidth()){ // 注釋掉原本的代碼
} else if(computedScrollWidth() > elemCell.outerWidth()){
  if(elemCell.find("."+ ELEM_GRID_DOWN)[0]) return;
  othis.append("
"); }
form.js

描述:【所有瀏覽器】select 的定位,項目中 select 如果在最右邊,右下角,點(diǎn)擊會讓無滾動的頁面出現(xiàn)滾動條。

解決:

// 修改部分定位寫法
var showDown = function(){
  // 將樣式復(fù)位
  dl.css({
    top: "",
    left: "",
    right: ""
  })
  var top = reElem.offset().top + reElem.outerHeight() + 5 - $win.scrollTop()
  ,dlHeight = dl.outerHeight(), dlWidth = dl.outerWidth(), winWidth = $(window).width();
 
  index = select[0].selectedIndex; //獲取最新的 selectedIndex

   // 判斷是否在最右邊的臨界點(diǎn)
  if (dlWidth + reElem.offset().left > winWidth) {
    dl.css({
      left: "auto",
      right: 0
    })
  }
  reElem.addClass(CLASS+"ed");
  dds.removeClass(HIDE);
  nearElem = null;
  
  //初始選中樣式
  dds.eq(index).addClass(THIS).siblings().removeClass(THIS);

  //上下定位識別
  if(top + dlHeight > $win.height() && top >= dlHeight){
    reElem.addClass(CLASS + "up");
  } else {
    // 定位重寫定義
  
    // 動畫需要的距離和彈窗的間隔,這是根據(jù) layui 的樣式來的,理論應(yīng)該計算
    var ANIM_UP = 30, SPACE = 5; 
    var reElemBottom = reElem.get(0).getBoundingClientRect().bottom;
    var dlTop = parseInt(dl.css("top"));
    var winHeight = $win.height();
    if (reElemBottom + dlHeight + ANIM_UP > winHeight ) {
      var computeValue = dlTop - (reElemBottom + SPACE - (winHeight - dlHeight - ANIM_UP))
      dl.css("top", computeValue)
    }
  }
  followScroll();
}
tree.js

描述:我使用的是 layui2.4.5 版本,內(nèi)部的 tree功能已經(jīng)滿足了,但是因為圖標(biāo)問題,這里我干脆隱藏。

解決:

// 第一處修改
Tree.prototype.tree = function() {
   // 大概在 line 48
   var li = $(["
  • " } // 第二處修改,大概在 72 - 76 注釋掉 /*+ (""+ ( hasChild ? ( item.spread ? icon.branch[1] : icon.branch[0]) : icon.leaf) +"") */ //節(jié)點(diǎn)圖標(biāo)
  • TODO

    持續(xù)更新中...

    轉(zhuǎn)載還請注明,本文地址

    文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

    轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/102391.html

    相關(guān)文章

    • SEO優(yōu)化后期網(wǎng)站微調(diào)起關(guān)鍵性穩(wěn)定排名的作用

      摘要:后期階段的定義是網(wǎng)站進(jìn)入前名并穩(wěn)定排名的階段。因此,在后期,我們需要對網(wǎng)站進(jìn)行微調(diào),讓網(wǎng)站的時效性得以維持,以便排名可以持續(xù)的穩(wěn)定。這樣,不用多久百度就會拿掉網(wǎng)站的排名了。 SEO后期階段的定義是:網(wǎng)站進(jìn)入前3名并穩(wěn)定排名的階段。在這個階段,我們的工作重點(diǎn)是對網(wǎng)站進(jìn)行微調(diào),并且尋求微...

      不知名網(wǎng)友 評論0 收藏0
    • [譯] 負(fù)邊距詳解

      摘要:正是因為沒有很好地了解負(fù)邊距才是導(dǎo)致各種奇怪的問題。不理解它負(fù)邊距不會在的設(shè)計窗口展示出效果。有兩種場景負(fù)邊距是很重要的。微調(diào)元素這是負(fù)外邊距最常也是最簡單的使用方式。 原文 The Definitive Guide to Using Negative Margins 自從1998年CSS2作為推薦以來,表格的使用漸漸退去,成為歷史。正因為此,從那以后CSS布局成為了優(yōu)雅代碼的代名詞。...

      Vixb 評論0 收藏0

    發(fā)表評論

    0條評論

    最新活動
    閱讀需要支付1元查看
    <