JavaScript Collection
javascript 里 這個for 的用法很經典啊
for(var m=n.firstchild; m!=null;m=m.nextSibling)
for(初始條件,跳出條件,改變條件)
//如果usrname 是null,undefined,0,""或NaN,它將被轉換為false
if(!username)
then.....
函數其實是一個對象..
arguments數組的length屬性指定了傳遞給該函數的實際參數數目
function對象的length屬性確切地說明了一個函數聲明的形式參數的個數.和artuments.length不同
function對象的length屬性在函數體的內部和外部都有效.
//對象的構造函數(是因為加上了this關鍵字,它就由普通函數變成了 構造函數了嗎?)
function ret(x,y)
{
this.X=x;
this.Y=y;
}
var R=new ret(5,3);
alert(R.X);
alert(R.Y);
通常來說HTML代碼段里會有js代碼段,反之亦然,而它們的字符串都可以用一對兒'或"括起來,而交叉使用則容易出錯
所以,國際上一般是這樣的,HTML中的字符串用",js中的用'
<a href="" οnclick="alert('Thank you')">Click Me</a>
javaScript的數組不過是一種特殊對象,因此,for/in循環像枚舉對象屬性一樣枚舉數組下標
document對象的前景色,及鏈接的顏色,必須在Body被解析之前設定,也就是說,必須在<Head>部分里設定這些文檔顏色,也可以將它們作為標記<body>的性質進行靜態設置.除此之外,不能在別的地方設置這些屬性.
唯一的例外 就是bgColor 它可以隨時設置
//如果從外部站點鏈接,首先去主頁
if(document.referer==""||document.referrer.indexOf('mysite.com")!=-1)
window.location="http://home.mysite.com";
對于重大安全問題的衡量,這種做法不合適,即:對于不支持JS的瀏覽器和禁用JS的用戶來說,它不起作用
其實呀,對于DOm來說,用document.myform.具體某張圖.src這種方式引用具體的元素(如圖片),非常有必要啊,如果用[]的話,大點兒的頁面的話,正常人是數不過來的!
//關于<select>元素
當用戶選中或取消一個選項時,select 元素將觸發它的onchange事件處理程序,對于"單選"型的select 元素,可讀寫的屬性selectedindex用數字指定了當前被選中的選項.對于"多選"型的select元素,一個selectedindex屬性不足以表示被選中的項的整個集合,在這種情況下,要確定選中了哪些選項,必須遍歷options[]數組的所有元素,檢查每個option對象的selected屬性的值.
可以用getElementById()方法找到特定的元素,然后用getElementsByTagName()方法在那些特定標記中找到所有給定類型的后代,
//找到文檔中特定的table元素,統計它的列數
var tableOfContents=document.getElementById('TOC');
var rows=tableOfContents.getElementsByTagName('tr');
var rowCounts=rows.length;
visibility 和display樣式性質之間的區別在于,它們對非動態定們(是'位'嗎)的元素的影響,對于出現在常規布局流中的元素(position性質值為static或relative).可以把visibility性質設為none,使元素不可見,但是會在文檔布局中保留它的空間.這樣的元素可以在不改變文檔而已的情況下,反復隱藏或顯示.但如果元素的display性質被設為none,就不會在文檔布局中為它分配空間,它兩邊的元素都會靠攏,就像它不存在一樣(在使用絕對定位和固定定位的元素時,visibility和display性質的效果一樣,因為這些元素都不是文檔布局的一部分).通常在使用動態定位元素時,可以使用visibility性質.在創建展開或折疊的大綱這樣的元素時,用display元素比較有效.
注意,除非你想用JS動態地設置visibility和display性質,使元素在某種情況下可見,否則用它們使元素不可見就變得毫無意義
顯式調用事件處理程序:
由于JS事件處理程序屬性的值是函數,因此可以用JS直接調用事件處理函數.例如,如果我們使用標記<form>的性質onsubmit定義了一個表單驗證函數,并想在用戶提交表單之前的某個時刻驗證表單,那么要以使用form對象的onsubmit屬性來調用那個事件處理函數.代碼如下:
document.myform.onsubmit();
但要注意,這種直接調用事件處理程序的方法不是模擬事件發生時的真正狀況.例如,如果調用一個link對象的onclick方法,它并不能使瀏覽器根據那個鏈接把新的文檔裝載進來,而只能執行定義為那個屬性值的函數.要使瀏覽器裝載新的文檔,還必須用第十三章的方法,設置window對象的location屬性,同樣,調用form對象的onsubmit方法或者調用submit對象的onclick方法都只能運行事件處理函數,而不能完成表單的提交(要真正提交表單還必須調用form對象的submit()方法);
事件處理程序的返回值:
通常,如果瀏覽器執行某種默認動作來響應一個事件,那么可以返回false阻止瀏覽器執行那個動作.除了onsubmit,其他通過返回false阻止執行默認動作的事件處理程序包括 onclick,onkeydown,onkeypress,onmousedown,onmouseup ,onreset. 關于返回false的規則有一個例外,即當用戶把鼠標移到一個超鏈接(或圖像)上時,瀏覽器的默認動作是在狀態欄中顯示鏈接的url.要阻止這種情況發生,必須讓onmouseover事件處理程序返回true.例如,用下面的代碼可以顯示一條不是url的消息:
<a href="help" οnmοuseοver="window.status='help';return true;">help</a>
轉載于:https://www.cnblogs.com/cinray/articles/2208065.html
總結
以上是生活随笔為你收集整理的JavaScript Collection的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaScript_day01
- 下一篇: 【vue】vue-znly