国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

Javascript的運用與提高

2016-07-15 09:29:01田明山
科技視界 2016年17期
關(guān)鍵詞:問題解決程序設(shè)計

田明山

【摘 要】JavaScript作為一種網(wǎng)絡(luò)的腳本語言、解釋性語言,采用小程序段的方式實現(xiàn)編程,廣泛的應(yīng)用于網(wǎng)頁制作過程中,被幾乎所有的網(wǎng)頁用來改進設(shè)計、驗證表單、檢測瀏覽器、創(chuàng)建cookies,以及更多的應(yīng)用,是因特網(wǎng)上最流行的腳本語言。當(dāng)你學(xué)習(xí)它、使用它、掌握它時,你一定會喜歡上它。

【關(guān)鍵詞】程序設(shè)計;JavaScript;問題解決

JavaScript屬于計算機專業(yè)類的重要教學(xué)內(nèi)容,對學(xué)生提高網(wǎng)頁設(shè)計水平具有重要意義。為保證學(xué)生能掌握J(rèn)avaScript的網(wǎng)頁制作,更好的培養(yǎng)網(wǎng)頁制作的實踐型人才,本文通過對JavaScrip學(xué)習(xí)過程中需要關(guān)注并加以解決的問題的分析,旨在提升學(xué)生掌握J(rèn)avaScrip的層次。

1 如何在js被禁用的情況下要保證網(wǎng)頁仍能實現(xiàn)它的核心功能

具體的js實現(xiàn)有以下幾個方案:

方案一:可以使用javascript偽協(xié)議:

Myexample

方案二:使用內(nèi)嵌的事件處理函數(shù):

當(dāng)我們采用以上兩種方案,在js被禁用時,“在一個新窗口里打開鏈接”這個功能就無法實現(xiàn)了。所以,我們不能為了使用js而濫用js。以下方案就為js預(yù)留出了退路,即所謂的平穩(wěn)退化(留好js被禁后的退路)

方案三:平穩(wěn)退化:

2 getElementsByName和getElementsById的區(qū)別

通常我們在獲取頁面內(nèi)控件時有多種方法,比如document.getElementsByName和document.getElementsById。如果您需要查找文檔中的一個特定的元素,最有效的方法是 getElementById()。由于一個頁面中的 name 屬性可能不唯一(如 HTML 表單中的單選按鈕通常具有相同的 name 屬性),而getElementsByName() 方法則返回帶有指定名稱的對象的集合(即數(shù)組)。

3 將網(wǎng)頁的結(jié)構(gòu)和內(nèi)容與JavaScript腳本的動作分離

3.1 網(wǎng)頁的結(jié)構(gòu)和內(nèi)容由html來做,而網(wǎng)頁的樣式則由CSS來做,網(wǎng)頁的行為讓由JavaScript來做

3.2 分離JavaScript代碼其實很簡單,JavaScript代碼并不要求事件必須在html中處理,完全可以在外部JavaScript文件里將一個事件添加到html文檔中的某個元素上。

4 瀏覽器的兼容性問題

兼容性問題是由于多種瀏覽器同時存在而導(dǎo)致的。用戶在使用不同瀏覽器訪問一個相同的頁面時,所看到的效果有時會有差異。這種差異可能會比較小,甚至不會被用戶注意到;也可能很大,極端情況下可能造成在某種瀏覽器下無法正常瀏覽。引起這些差異的問題統(tǒng)稱為“瀏覽器兼容性問題”。我們所要做的是新老要通吃,尤其要注意老的,即向后兼容。比如:

4.1 document.formName.item(”itemName”) 問題

問題說明:IE下,可以使用 document.formName.item(”itemName”) 或 document.formName.elements ["elementName"];而ff 下,只能使用document.formName.elements["elementName"]。

解決途徑:統(tǒng)一使用document.formName.elements["elementName"]。

4.2 數(shù)組類對象問題

問題說明:IE下,可以使用 () 或 [] 獲取數(shù)組類對象;ff下,只能使用 [ ]獲取數(shù)組類對象。

解決途徑:統(tǒng)一使用 [] 獲取集合類對象。

4.3 window.location.href問題

問題說明:使用IE或者ff2.0.x以下版本,可以使用window.location或window.location.href;而ff1.5.x以下版本,卻只能使用window.location。

解決方法:只使用 window.location 以避免版本兼容問題。當(dāng)然也可以使用 location.replace()方法。

4.4 frame和iframe問題

4.4.1 訪問frame對象

IE:可以使用window.frameId或者window.frameName來訪問frame對象;

ff:只能使用window.frameName來訪問frame對象;

解決方法:統(tǒng)一使用 window.document.getElementById(”frameId”) 來訪問這個frame對象。

4.4.2 切換frame內(nèi)容

在IE和ff中都均使用 window.document.getElementById(”frameId”).src=“example.html”或 window.frameName.location=“example.html”來更改frame中的內(nèi)容;

如果需要將frame中的參數(shù)傳回父窗口,可以在frame中使用parent關(guān)鍵字來訪問父窗口。

4.5 innerText的問題.

問題說明:innerText在IE中可以正常工作,但是innerText在ff中卻不起效果。

解決方法:在非IE瀏覽器中可以使用textContent代替innerText。innerHTML 能夠同時被ie、ff等瀏覽器支持,而outerHTML卻只能被ie支持,最好不用。

5 性能考慮

以前的程序員話費大量的精力,想盡一切的辦法把程序的效率弄得高一點,因為那時的計算機非常慢,而且也非常貴,而現(xiàn)如今的計算機不僅快多了而且也便宜多了,是不是就無需考慮執(zhí)行性能了呢?性能是永遠要考慮的問題,這涉及到你編寫的網(wǎng)頁能否順利快速地加載。

那如何保證腳本執(zhí)行的性能是最優(yōu)的呢?我們可以盡量做到以下幾點。

5.1 盡可能少訪問dom、少使用標(biāo)記、少用循環(huán)遍歷

5.2 合并腳本代碼(js代碼),減少頁面在加載時所發(fā)送的請求數(shù)量;將之前,這樣可以加快頁面的加載速度,卻不影響js的加載。

5.3 盡可能的壓縮腳本:將js代碼中多余的空格、注釋刪除,甚至可以將變量名簡化??梢詼?zhǔn)備兩個版本的js腳本文件:一個是工作版本,用于修改代碼和注釋,另一個為精簡版本,則用于發(fā)布。

不管什么樣的語言,能實際運用才是王道,技術(shù)是靠練出來的,也就是說多做項目,你才能有提高。JavaScript更是如此,同時JavaScript的掌握和運用還需要結(jié)合HTML、SQL、CSS等的學(xué)習(xí)來提高自己綜合能力。一個人必須去感受和領(lǐng)悟構(gòu)建程序帶來的強烈快感。當(dāng)你一步步的掌握知識點,一點點的將程序搭建起來時,就會對自己產(chǎn)生激勵與肯定,帶來十分美妙的滿足感。

【參考文獻】

[1]W3School.W3School教程JavaScript.

[2]Jaward.如何正確學(xué)習(xí)JavaScript.

[3]周翔.提高web應(yīng)用性能之 JavaScript 性能調(diào)優(yōu).

[責(zé)任編輯:王偉平]

猜你喜歡
問題解決程序設(shè)計
基于Visual Studio Code的C語言程序設(shè)計實踐教學(xué)探索
計算機教育(2020年5期)2020-07-24 08:52:56
從細(xì)節(jié)入手,談PLC程序設(shè)計技巧
電子制作(2019年9期)2019-05-30 09:42:04
高職高專院校C語言程序設(shè)計教學(xué)改革探索
“問題解決”課堂教學(xué)模式
淺談小學(xué)數(shù)學(xué)問題解決認(rèn)知模型
如何培養(yǎng)小學(xué)生的數(shù)學(xué)問題解決能力
高中化學(xué)“問題解決”課堂教學(xué)模式的研究與實踐
PLC梯形圖程序設(shè)計技巧及應(yīng)用
上高县| 中江县| 策勒县| 扎兰屯市| 教育| 伊吾县| 华坪县| 固阳县| 西林县| 牟定县| 西宁市| 林西县| 沭阳县| 广州市| 米脂县| 广元市| 通许县| 塔河县| 承德市| 山东| 通江县| 汉寿县| 宜城市| 乌拉特中旗| 柘荣县| 正宁县| 剑阁县| 黑山县| 灌阳县| 新河县| 尉氏县| 曲麻莱县| 福清市| 务川| 都昌县| 漯河市| 浦县| 永春县| 无极县| 乐都县| 施甸县|