bootstrap 的 switch 按鈕初始化問題
阿新 • • 發佈:2018-11-06
問題描述 :
不管使用標籤 input的 checkbox 生成switch按鈕還是使用 js 的 bootstrapSwitch 函式 , 初始化按鈕狀態始終是關閉的
(這裡我使用的是 bootstrap-switch.js 版本 v3.3.4)
解決方案 :
跟蹤一下原始碼 , 下面第七行的 prvcontainerPosition.call(_this3); 這句話出現了問題 (原始碼中大概 162 行)
1 function prvinit() { 2 var _this3 = this; 3 4 var init = function init() { 5 _this3.setPrevOptions(); 6 prvwidth.call(_this3); 7 prvcontainerPosition.call(_this3); 8 //... ... 9 }
該方法 prvcontainerPosition 中的 state 獲取結果為 undefined
function prvcontainerPosition() { var _this2 = this; varstate = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this.ope; //... ... }
修改程式碼如下 , 傳遞引數 state
function prvinit() { var _this3 = this; var init = function init() { _this3.setPrevOptions(); prvwidth.call(_this3); var state = _this3.prevOptions.state ; prvcontainerPosition.call(_this3,state);// ... ... }