vue Element UI走馬燈元件重寫

2021-08-28 13:02:25 字數 1695 閱讀 5843

1、element ui走馬燈元件 -- carousel

分析一波源**:

carousel/src/main.vue 檔案為 el-carousel檔案主要功能

carousel/src/item.vue 檔案為 el-carousel-item 功能

2、carousel/src/main.vue檔案詳解:

1)、左右button切換按鈕

2)、橫向tab切換

3)關聯child elcarouselitem元件的方式

如:我將我的子元件命名為myelcarouselitem 則為如下

updateitems()

3、carousel/src/item.vue 檔案詳解:

1)計算每個carouselitem 的translate 距離

calculatetranslate(index, activeindex, parentwidth) else if (index < activeindex) else

}2)carouselitem 的大小樣式確定 以及滾動距離樣式確定 translate、scale值

translateitem(index, activeindex, oldindex)

if (index !== activeindex && length > 2)

if (this.$parent.type === 'card') else

this.ready = true;

}4、個人修改實現5個card展示在前,不全屏展示的效果

1)各card的大小縮小比率

const card_scale = 0.9; // 中心card的左右兩邊的第乙個card大小縮小比例

const card_scale_diff_second = 0.1; //中心card的左右兩邊的第二個card大小縮小比例 與中心card的左右兩邊的第乙個card大小縮小比例差值 ,即中心card的左右兩邊的第二個card大小縮小比例為:card_scale - card_scale_diff_second

2)、計算5個card的移動距離 ,以下寫法超過5個會出現切換視覺效果不佳問題

calculatetranslate(index, activeindex, parentwidth,cardwidth) else if(index - activeindex <= -2)

return diff + (4 * card_scale - 2 * card_scale_diff_second ) * cardwidth;

}//方式一:

// else if (index < activeindex) else

return diff + (2 * card_scale - card_scale_diff_second) * cardwidth;

},3)、計算translate

translateitem(index, activeindex, oldindex) if (index !== activeindex && length />2) if (this." class="has" src="">parent.type === 'card') else

this.ready = true;

},

文字走馬燈效果

文字走馬燈效果 最近碰到的問題,由於label的size固定,而label.caption太長,無法完整顯示出來,要求實現文字走馬燈效果,依次顯示出完整的內容。文字走馬燈效果有幾種方法 1 通過移動label.left值實現,但label會移動。不符合要求 2 不斷複製lable.caption來實...

progressBar走馬燈設定

初始值visible false 讓progressbar1出現時 progressbar1.visible true progressbar1.style progressbarstyle.marquee 走馬燈 讓它消失時 progressbar1.visible false progressb...

解題報告 商品推薦走馬燈

有乙個新的研究顯示,人在看見一系列的時,如果它們的排列有一定的軸對稱性,則會更為覺得賞心悅目。根據這個特性,作為阿里巴巴旗下重要的電子商務交易平台的 希望了解商品推薦的走馬燈現在的賞心悅目情況,以便判斷是否之後需要做出調整。例如,當價值分別為 1,2,1 的商品排列在一起的時候,人們可以看到它的所有...