欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

HTML<transition-group>實例分析

這篇文章主要講解了“HTML <transition-group>實例分析”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“HTML <transition-group>實例分析”吧!

你所需要的網(wǎng)站建設服務,我們均能行業(yè)靠前的水平為你提供.標準是產(chǎn)品質(zhì)量的保證,主要從事成都網(wǎng)站設計、成都做網(wǎng)站、企業(yè)網(wǎng)站建設、移動網(wǎng)站建設、網(wǎng)頁設計、品牌網(wǎng)站建設、網(wǎng)頁制作、做網(wǎng)站、建網(wǎng)站。創(chuàng)新互聯(lián)建站擁有實力堅強的技術研發(fā)團隊及素養(yǎng)的視覺設計專才。

樣式同前

ul.item {

  list-style-type: disc;

  margin-block-start: 0;

  margin-block-end: 0;

  margin-inline-start: 0;

  margin-inline-end: 0;

  padding-inline-start: 0;

}

.item li {

  height: 50px;

  line-height: 50px;

  border: 1px solid #aaaaaa;

  width: 200px;

  padding: 0 10px;

  display: flex;

  align-items: center;

}

先把DOM渲染出來

new Vue({

  el: "#drag",

  data: {

    draggingItem: null,

    lastItem: null,

    items: Array.from({ length: 5 }, (_item, index) => ({

      key: index + 1 + "",

      name: "Item" + (index + 1),

    })),

  },

});

模板是異常的簡單

<transition-group name="flip-list" tag="ul" class="item">

  <li draggable="true" :key="item.key" v-for="item of items"

    {{item.name}}

  </li>

</transition-group>

然后可以在<transition-group>加name了。

<transition-group name="flip-list" tag="ul" class="item">

  <!-- 省略 -->

</transition-group>

當然也要加上配套的樣式

.flip-list-move {

  transition: transform 0.3s;

}

下面就是給子元素加上事件了

<li draggable="true" :key="item.key" v-for="item of items" 

  @dragstart="dragstart(item)" @dragover="dragover(item)">

  {{item.name}}

</li>

就兩個事件

dragstart: function (item) {

    this.draggingItem = item;

},

dragover: function (item) {

    if (item !== this.draggingItem && this.lastItem !== item) {

      const fromIndex = this.items.indexOf(this.draggingItem);

      const toIndex = this.items.indexOf(item);

      const temp = this.items[fromIndex];

      this.items[fromIndex] = this.items[toIndex];

      this.items[toIndex] = temp;

      this.items = [&hellip;this.items];

    }

    this.lastItem = item;

}

這里我和之前的寫法略作了改動,判斷拖動元素和拖入元素不是同一個,還判斷了拖入元素和上次拖入元素也不是同一個,不然會發(fā)生不停抖動的情況,因為拖動的時候發(fā)生了元素移動,導致反復觸發(fā)dragover事件。

注意最后這里的this.items = [&hellip;this.items],因為上面是直接在索引上修改數(shù)組元素的,而Vue2的響應式對數(shù)組在索引上的修改察覺不到,所以重新給this.items賦值,不過好在有key的加持,Vue只會針對修改的部分進行更新,無須擔心性能問題。

整個的解決方案把所有HTML、CSS代碼都算入也就不滿80行,讓我切切實實感受到了<transition-group>的威力&mdash;&mdash;大殺器也,如果在Vue應用中有列表型元素的動畫需求,第一考慮的就該是它。

感謝各位的閱讀,以上就是“HTML <transition-group>實例分析”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對HTML <transition-group>實例分析這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關知識點的文章,歡迎關注!

網(wǎng)站標題:HTML<transition-group>實例分析
鏈接分享:http://aaarwkj.com/article6/pjsdog.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、標簽優(yōu)化關鍵詞優(yōu)化、網(wǎng)站導航App設計、品牌網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設
18禁黄久久久一区二区三区| 久久午夜福利欧美视频| 成人作爱视频免费播放| 在线青青草视频免费观看| 嫩草网站国产精品一区二| 久久精品国产亚洲av麻| 91在线视频欧美国产| 亚洲熟妇av乱码在线| 99蜜桃臀成人美女视频| 成人黄色动漫在线播放| 男人天堂在线视频网站| 久久久久久极精品久久久| 日本午夜一区二区在线观看| 丰满人妻侵犯中文字幕| 国产高清学生三级一区二区| 欧美成人精品欧美一级黄片| 亚洲第一精品国产日韩| 国产传媒视频网站在线观看| 亚洲一区麻豆文化传媒| 日韩免费的黄色片网站| 国产日韩欧美在线精品| 91麻豆精品一区二区三区| 亚洲av色福免费网站| 国内精品久久久久久2021| 一区二区久久精品视频| 国产成人av在线观看| 美女丝袜美腿魅惑男人| 国产视频专区一区二区| 亚洲av网站女性向在线观看| 国产欧美激情一区二区| 国产精品一品二区三区在线观看| 日本精品一区二区不卡| 国产又大又长又粗又硬又猛| 久久91超碰青草在哪里看| 日韩人妻精品在线一区二区| 日本在线免费观看91| 99热精品综合在线观看| 亚洲三级伦理在线视频| 看看永久成人免费视频| 色欧美一区二区三区在线| 黄色av免费无毒网站|