欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript中的this指向和自定義屬性詳解

 更新時間:2021年09月07日 15:43:12   作者:  
下面小編就為大家?guī)硪黄猨s中的this指向和自定義屬性。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

1.this關鍵字

this指向的是當前元素

全局函數(shù)中的this指向window對象

代碼中聲明了一個全局函數(shù),是屬于瀏覽器窗口對象的,所以this表示的就是瀏覽器窗口對象window

function fn() {
	consolo.log(this);
}
fn()

標簽事件屬性中的this指向window對象

如果將一個全局函數(shù)在一個標簽屬性中調用,如下:

<button onclick="fn()">點我試試</button>
function fn() {
	console.log(this)
}

事件屬性函數(shù)中的this指向當前操作的標簽

如果在標簽對象的屬性上聲明了一個函數(shù),此時這個函數(shù)屬于標簽屬性,所以函數(shù)內部的this指向當前標簽對象

<button id="btn">點我試試</button>
var btn = document.getElementById('btn');
btn.onclick = function() {
	console.log(this);
}

2.自定義屬性

在前端網(wǎng)頁的開發(fā)中,JavaScript語法操作的主要是標簽對象,在一些特定的場合,需要通過設置自定義屬性來對標簽進行操作

基本語法:element.屬性名 =屬性值

var btn = document.getElementById('btn');
btn.index = 1;

3.綜合案例1:tab選項卡的實現(xiàn)

實現(xiàn)步驟
1.先完成靜態(tài)頁面的設計(html與css代碼見附錄)

2.先獲取頁面元素

 var uli = document.querySelector('ul').querySelectorAll('li');
 var oli = document.querySelector('ol').querySelectorAll('li');

3.通過for循環(huán)為元素添加點擊事件

for (var i = 0; i < uli.length; i++) {          
            uli[i].addEventListener('click', function () {   
               } )
        }

4.給元素添加自定義屬性,給對應的選項卡添加索引號

  uli[i].index = i;

給點擊事件添加對應的樣式(完整代碼)

for (var i = 0; i < uli.length; i++) {
            uli[i].index = i;
            uli[i].addEventListener('click', function () {
                for (var j = 0; j < uli.length; j++) {
                    uli[j].className = '';
                    oli[j].className = '';
                }
                this.className = 'current';
                oli[this.index].className = 'current';
            })
        }

注意:本案例是通過添加類名來實現(xiàn)對應選項卡的顯示和隱藏,在給元素添加對應的類名之前需要將所有元素的類名清除

附錄

<style>
        * {
            margin: 0;
            padding: 0;
            list-style: none;
        }
        .box {
            height: 250px;
            width: 300px;
            border: 2px solid;
        }
        ul {
            display: flex;
            justify-content: space-between;
            background: red;
            border-bottom: 2px #ccc;
        }
        ul li {
            float: left;
            width: 100px;
            color: #fff;
            cursor: pointer;
            height: 40px;
            line-height: 40px;
            text-align: center;
        }
        ul li.current {
            border-bottom: 5px green solid;
        }
        ol li {
            margin: 30px;
            display: none;
        }
        ol li.current {
            display: block;
        }
    </style>
    <div class="box">
        <ul>
            <li class="current">第一頁</li>
            <li>第二頁</li>
            <li>第三頁</li>
        </ul>
        <ol>
            <li class="current">我是第一頁</li>
            <li>我是第二頁</li>
            <li>我是第三頁</li>
        </ol>
    </div>

總結

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注腳本之家的更多內容!

相關文章

  • 前端echarts tooltip展示多項自定義數(shù)據(jù)代碼示例

    前端echarts tooltip展示多項自定義數(shù)據(jù)代碼示例

    Echarts是一個基于JavaScript的開源圖表庫,提供了豐富的圖表類型,如折線圖、柱狀圖、餅圖、散點圖等,支持動態(tài)數(shù)據(jù)交互和自定義配置,這篇文章主要給大家介紹了關于前端echarts tooltip展示多項自定義數(shù)據(jù)的相關資料,需要的朋友可以參考下
    2024-09-09
  • JS 判斷代碼全收集

    JS 判斷代碼全收集

    js判斷代碼,比較全,大家可以看下代碼,熟悉常見判斷代碼。
    2009-04-04
  • JavaScript實現(xiàn)大文件上傳的示例代碼

    JavaScript實現(xiàn)大文件上傳的示例代碼

    這篇文章主要為大家詳細介紹了JavaScript實現(xiàn)大文件上傳功能的示例代碼,文中的代碼講解詳細,對我們學習JavaScript有一定幫助,感興趣可以跟隨小編一起學習一下
    2022-11-11
  • js中回調函數(shù)的學習筆記

    js中回調函數(shù)的學習筆記

    這篇文章主要介紹了js中回調函數(shù)的相關知識,需要的朋友可以參考下
    2014-07-07
  • JS寄快遞地址智能解析的實現(xiàn)代碼

    JS寄快遞地址智能解析的實現(xiàn)代碼

    這篇文章主要介紹了JS寄快遞地址智能解析,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07
  • JS實現(xiàn)橫向跑馬燈效果代碼

    JS實現(xiàn)橫向跑馬燈效果代碼

    這篇文章主要介紹了JS實現(xiàn)橫向跑馬燈效果代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-04-04
  • javascript模擬枚舉的簡單實例

    javascript模擬枚舉的簡單實例

    本篇文章主要是對javascript模擬枚舉的簡單實例進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2014-03-03
  • 詳解微信小程序自定義組件的實現(xiàn)及數(shù)據(jù)交互

    詳解微信小程序自定義組件的實現(xiàn)及數(shù)據(jù)交互

    這篇文章主要介紹了微信小程序自定義組件的實現(xiàn)及數(shù)據(jù)交互,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-07-07
  • js實現(xiàn)簡易點擊切換顯示或隱藏

    js實現(xiàn)簡易點擊切換顯示或隱藏

    這篇文章主要為大家詳細介紹了js實現(xiàn)簡易點擊切換顯示或隱藏,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • 微信小程序中時間戳和日期的相互轉換問題

    微信小程序中時間戳和日期的相互轉換問題

    這篇文章主要介紹了微信小程序中時間戳和日期的相互轉換問題,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-07-07

最新評論