這裡我參考了前輩的部落格
,在前輩部落格中可以進行更深一步的學習:
文件中給的解釋是:jquery.extend()函式主要是用於將乙個或多個物件的內容合併到目標物件上
,該函式可以將乙個或多個物件的成員屬性和方法複製到指定的物件上。
extend也是在我們寫外掛程式時常用的方法,
$.extend(param,dparam...),它的含義是將dparam合併到param中,
需要注意如果多個物件具有該屬性,則後者會覆蓋前者的屬性值,
也就是說var result = $.extend({},,)
最後 result =
只有乙個引數時會將改方法合併到jquery的全域性物件中
比如:
$.extend(
})
最終會將hello方法新增到jquery全域性物件中去。
jquery中的extend還有一種過載原型
語法:$.extend(boolean,dest,src1,src2...)
第乙個布林值引數表示是否使用深度拷貝,預設為false(可以明確指定為true,但是不能明確指明為false)
那麼什麼是深度拷貝呢?其實不難理解,深度拷貝就是該"屬性物件"的"屬性"也會被拷貝的目標物件中
var result = $.extend(true
, {}
},});
那麼合併後的結果就是:
result =
}
那麼如果引數是false,結果會是神馬呢?
result =
}
會看到第乙個abstract內的屬性並沒有被拷貝,因為沒有執行深度拷貝,所以abstract會被後乙個覆蓋掉了。
關於extend拷貝的方法我總結了上面三點,其實還有好多學問,需要我們去發掘。
我看目前網上幾乎都是水平的可滑動的刻度尺外掛程式,幾乎沒有豎直的外掛程式,其實也大同小異。因為做這個東西的需要,所以我需要做乙個豎直的刻度尺(而且我本人也不喜歡用外掛程式,我想有一天實現我的外掛程式夢)。
我做這個外掛程式的第一步是先用html+ css靜態的寫出大致的效果(這樣的同時我覺得我也直觀的構思了這個東西的大致架構),比如先0~10做出來,然後計算好間距,然後在後面做文章。
然後我們需要處理中間標誌(即曲線的初始位置)
var firstrand = true;if
(firstrand)
var rulerlno = 0;
for (var z = 0; z < setlen; z++)
}
改變曲線的位置《和傳入的數值相對應》
if (param.value && param.value >= param.minunit && param.value <=param.max)
else
然後我們用each遍歷的方法給刻度尺標上刻度值(這裡idx就是索引值,ele表示獲取遍歷的每乙個dom物件)
(idx, ele) })
到這裡我們的刻度尺的**已經完成(只展示了部分**)
當我們完成外掛程式的封裝,我們只需要建立乙個例項化的物件就可以了。
var measureruler = new
measureruler()
希望我將來有一天能夠實現我的外掛程式夢
自製刻度尺外掛程式 前端簡易實現 騰訊信用 介面
這裡我參考了前輩的部落格 在前輩部落格中可以進行更深一步的學習 文件中給的解釋是 jquery.extend 函式主要是用於將乙個或多個物件的內容合併到目標物件上 該函式可以將乙個或多個物件的成員屬性和方法複製到指定的物件上。extend也是在我們寫外掛程式時常用的方法,extend param,d...
金額刻度尺Ruler
在github看過一些實現,發現大部分都是使用scrollview實現,沒有重複復用刻度,如果刻度值很大,就可能引起oom,所有我這裡實用的是自定義view,實現刻度值復用 效果圖 這裡主要是自定義view實現刻度共用 刻度滾動動畫 valueanimator 可實現自定義刻度值樣式 例項 rule...
excel 中製作刻度尺
excel 中設定每乙個單元格的寬度為1mm,以單元格的上下邊框做刻度,便可做出 1mm的寬度。要設定單位格的高度,只需要將excel行標題上右擊,選 行高 在彈出的對話方塊內填入2.834645669。為什麼是2.834645669呢?excel的行高的計量單位是磅 point 根據office單...