最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javaScript與vue獲取元素的方法代碼示例

 更新時間:2023年10月08日 11:56:35   作者:小宛碎碎冰  
在開發(fā)中我們可能會遇到這樣的問題,文本框聚焦、元素點擊等,所以下面這篇文章主要給大家介紹了關(guān)于javaScript與vue獲取元素的相關(guān)資料,需要的朋友可以參考下

javaScript

1 根據(jù)ID獲取

get 獲得 element 元素 by 通過

返回的是一個元素對象

document.getElementById('ID');

2 根據(jù)標簽名獲取

get 獲得 element 元素 by 通過 Tag標簽 Name名字

返回帶有指定標簽名的對象的集合 以偽數(shù)組的形式存儲

document.getElementsByTagName('標簽名');

3 通過HTML5新增的方法獲取

document.getElementsByClassName('類名') 需要加下標 因為class可以有多個元素

querySelector('?') 參數(shù)是css選擇器,只能返回一個元素(最上面的元素)

querySelectorAll('?') 參數(shù)是css選擇器,會返回全部該選擇器集合 通過下標獲取單個元素

vue獲取元素及兄弟元素,父級元素

先添加ref

<div class="" ref="divBox">

獲取對象

let a = this.$refs.divBox

獲取父、子、兄弟節(jié)點方法

var b = a.childNodes; 獲取a的全部子節(jié)點
var c = a.parentNode; 獲取a的父節(jié)點
var d = a.nextSbiling; 獲取a的下一個兄弟節(jié)點
var d = a.nextElementSibling; 獲取a的下一個兄弟節(jié)點
var e = a.previousSbiling;獲取a的上一個兄弟節(jié)點
var e = a.previousElementSibling;獲取a的上一個兄弟節(jié)點
var f = a.firstChild; 獲取a的第一個子節(jié)點
var g = a.lastChild; 獲取a的最后一個子節(jié)點

附:vue遍歷過程中獲取元素

在開發(fā)時遇到需要遍歷設(shè)備集合,并且一個集合對應(yīng)一個視頻元素(video)的問題

這里主要展示vue遍歷過程中如何取出元素的方法以及一些坑

首先是循環(huán)

    <el-row style="margin-bottom: 10px;">
      <template v-for="(item, index) in equipmentTempList">
        <el-col :xs="24" :sm="24" :md="12" :lg="4">
          <el-card class="update-log">
            <el-row style="text-align: center; margin-bottom: 40px">實時溫度信息</el-row>
            <el-row style="height: 48px;">
              <el-col><span>當(dāng)前相機精確位置:{{ item.groupName }}</span></el-col>
            </el-row>
            <el-row style="height: 48px;">
              <el-col><span>當(dāng)前外表最低溫度:{{ item.tempMin }}℃</span></el-col>
            </el-row>
            <el-row style="height: 48px;">
              <el-col><span>當(dāng)前外表最高溫度:{{ item.tempMax }}℃</span></el-col>
            </el-row>
            <el-row style="height: 48px;">
              <el-col><span>當(dāng)前外表平均溫度:{{ item.tempAvg }}℃</span></el-col>
            </el-row>
          </el-card>
        </el-col>
        <el-col :xs="24" :sm="24" :md="12" :lg="8">
          <div style="height: 296px; width: 489px">
            <video :ref="'videoRef_' + index" :id="'video_' + index" height="285" width="400" muted="muted"
                   autoplay="autoplay"></video>
          </div>
        </el-col>
      </template>
    </el-row>

綁定ref元素是為了獲取video元素,并且由于是數(shù)組所以每一個video元素需要綁定給不同ref,總的來說如果你需要在組件的 JS 代碼中操作 <video> 元素,可以使用 ref 屬性,如果需要給 <video> 元素設(shè)置樣式或者 JS 代碼中無需操作該元素,可以使用 id 屬性。

 然后是method

    async mwfs() {
        // Wfs 對象已經(jīng)存在,可以進行后續(xù)操作
        if (Wfs.isSupported()) {
          // 循環(huán)遍歷設(shè)備列表
          //發(fā)送請求獲取當(dāng)前設(shè)備列表
          this.equipmentList = await this.getEquipmentTemp()
          for (let i = 0; i < this.equipmentList.length; i++) {
            const item = this.equipmentList[i];
            // // 發(fā)送同步請求獲取當(dāng)前溫度信息
            // const res = await EquipTemp(item);
            // this.equipmentTempList.push(res.data)
            // 使用異步操作加載視頻源
            await new Promise(async resolve => { // 將 Promise 函數(shù)添加 async 關(guān)鍵字標識
              //保證獲取最新的DOM元素
              this.$nextTick(() => {
                const videoRef = this.$refs[`videoRef_${i}`][0];
                console.log(videoRef)
                const wfs = new Wfs();
                wfs.attachMedia(videoRef, item.id);
                this.videos.push(wfs)
                wfs.on(Wfs.Events.MEDIA_ATTACHED, () => {
                  videoRef.play();
                  resolve();
                });
              });
            });
          }
      }
    },

在這段代碼中,首先是for循環(huán),為什么不采用foreach循環(huán)有以下原因

       ->首先就是先獲取了設(shè)備列表然后采用了異步操作加載視頻源可以避免阻塞主線程,提高頁面響應(yīng)速度,并且在加載多個視頻時,異步操作可以同時進行,進一步提高效率。

       ->其次就是在foreach循環(huán)中無法等待異步操作完成再執(zhí)行下一步循環(huán)的問題,因此容易出現(xiàn)數(shù)據(jù)錯亂或者遺漏等問題。

       然后這里的this.$nextTick是為了保證我們的video元素已經(jīng)是最新的才進行視頻加載,獲取元素的方法是通過this.$refs[`videoRef_${i}`][0]獲取的,因為ref是可以綁定多個元素的,而我們是一個設(shè)備對應(yīng)一個視頻的,所以只需要取ref數(shù)組的第一個元素即可。

tips:只需要將元素打印出來,如果不是undefined是對應(yīng)的元素即為獲取到元素

總結(jié)

到此這篇關(guān)于javaScript與vue獲取元素的文章就介紹到這了,更多相關(guān)js與vue獲取元素內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue-cli4如何打包靜態(tài)資源到指定目錄

    vue-cli4如何打包靜態(tài)資源到指定目錄

    這篇文章主要介紹了vue-cli4打包靜態(tài)資源到指定目錄方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • vue-cli 為項目設(shè)置別名的方法

    vue-cli 為項目設(shè)置別名的方法

    這篇文章主要介紹了vue-cli 為項目設(shè)置別名的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • 如何在 Vue 表單中處理圖片

    如何在 Vue 表單中處理圖片

    這篇文章主要介紹了如何在 Vue 表單中處理圖片,幫助大家更好的理解和使用vue框架,感興趣的朋友可以了解下
    2021-01-01
  • 解決vscode?Better?Comments插件在vue文件中不顯示相對應(yīng)的顏色的問題

    解決vscode?Better?Comments插件在vue文件中不顯示相對應(yīng)的顏色的問題

    最近使用了Better?Comments這款插件,發(fā)現(xiàn)在ts文件中可以顯示對應(yīng)的顏色,但在vue文件中并不顯示對應(yīng)顏色?,下面小編給大家分享解決方法,感興趣的朋友跟隨小編一起看看吧
    2022-09-09
  • Vue替代vuex的存儲庫Pinia詳細介紹

    Vue替代vuex的存儲庫Pinia詳細介紹

    這篇文章主要介紹了Vue替代vuex的存儲庫Pinia,聽說pinia與vue3更配,便開啟了vue3的學(xué)習(xí)之路,pinia 和 vuex 具有相同的功效, 是 Vue 的存儲庫,它允許您跨組件/頁面共享狀態(tài)
    2022-09-09
  • Vue內(nèi)容分發(fā)slot(全面解析)

    Vue內(nèi)容分發(fā)slot(全面解析)

    下面小編就為大家?guī)硪黄猇ue內(nèi)容分發(fā)slot(全面解析)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • vue-axios的使用以及axios請求賦值為空的問題

    vue-axios的使用以及axios請求賦值為空的問題

    這篇文章主要介紹了vue-axios的使用以及axios請求賦值為空的問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • vue打包部署到springboot的實現(xiàn)示例

    vue打包部署到springboot的實現(xiàn)示例

    項目開發(fā)中,一般我們都會使用SpringBoot+Vue進行前后端開發(fā),本文主要介紹了vue打包部署到springboot的實現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下
    2024-07-07
  • vue項目實現(xiàn)點擊目標區(qū)域之外可關(guān)閉(隱藏)目標區(qū)域

    vue項目實現(xiàn)點擊目標區(qū)域之外可關(guān)閉(隱藏)目標區(qū)域

    這篇文章主要介紹了vue項目實現(xiàn)點擊目標區(qū)域之外可關(guān)閉(隱藏)目標區(qū)域,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • webpack+vue.js構(gòu)建前端工程化的詳細教程

    webpack+vue.js構(gòu)建前端工程化的詳細教程

    這篇文章主要介紹了webpack+vue.js構(gòu)建前端工程化的方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05

最新評論

周口市| 藁城市| 同德县| 浮山县| 霍山县| 永济市| 德钦县| 汕头市| 盐城市| 尼玛县| 太保市| 博罗县| 海安县| 平南县| 鹿邑县| 百色市| 荥经县| 临夏县| 佛坪县| 左贡县| 历史| 法库县| 高唐县| 灌南县| 大兴区| 哈巴河县| 哈尔滨市| 兴国县| 寿光市| 全南县| 临西县| 延庆县| 老河口市| 井陉县| 安图县| 嘉禾县| 红桥区| 武平县| 同仁县| 晋城| 高安市|