JSベース(上)

JSとDOMの関係

HTMLブラウザは、メモリにDOMオブジェクトを形成するために、機能コード、HTMLソース(例えば、DIV、pタグ、等)をレンダリングしました

 

ドキュメントオブジェクトモデルDOM(Document Object Model)の規格では、アクセス方法やプロセスのHTML文書を定義します。DOM HTML文書は、要素、属性、およびテキストをツリー構造(ノードツリー)として表示されます。

 

 

HTML文書は、ノードのコレクション、そして3つの一般的なDOMノードを構成すると言うことができます。

1.要素ノード:図上記<HTML>、<BODY>、<P>ノードのすべての要素、すなわちラベルです。

2.テキストノード:ユーザーに提示されたコンテンツは、そのような<LI>などのJavaScript、DOM、CSSおよびその他のテキストの内容。

3.属性ノード:そのようなリンクのような素子特性が、HREF <a>タグ=「http://www.imooc.com」属性。

 

BOMオブジェクト(などブラウザのアドレスバー、歴史、DOMは、オブジェクトの上に取り付けられています)

内部ブラウ​​ザはJSインタプリタ/エンジンを有し、JSのHTMLコードがエンジンで実行され、結果がDOMオブジェクトに対する操作(すなわち、ラベルはノード動作中木です)

効果のJSを追加:JSだけDOMオブジェクトよりも何も動作

 

導入のJSの仕方

JSコードは、HTML内の任意の場所に書き込むことができますが、ブラウザは、上から下までのコードを解析し、ノートこの時点でhtmlタグを解析するかどうかを、DOMオブジェクトにJSアクセシビリティが可能なので、時には我々はにコードを置きますHTMLの終わり、つまり、</ HTML>の前に

直接HTMLで記述された:ます。<script type = "text / javascriptの">コード</ SCRIPT> 

外部リファレンスを介して:<スクリプトタイプ=テキスト/ javascriptのSRC = ""> </ SCRIPT>

遅いページがロードを防ぐには、ページの下部に非クリティカルJavaScriptを置くことができます

 

変数の宣言 

VAR変数名;変数名は大文字と小文字が区別され; varステートメントは、グローバル変数を汚染しません。文字の変数名は、後にデジタルで、初めに、ドル記号を強調します

機能コードセグメントは、特定の機能を完成させます。

一般的な方法

document.writeを使用してHTMLへの出力文(「」)

Confire():メッセージの確認ダイアログ; trueを返すには、[OK]をクリックします。

 

演算子の問題

スプライシング演算子:+、合計は数、接続文字であれば、2 + 3 +「愛」+ 4 + 5 //出力5love45として

PHPと異なる、通常と。

 

論理演算子または:真の値を返します。例えば: 

= 1があります。

B =偽でした。

VaRのD =(|| B)。// D为1

 

そして、論理演算子:  変数最後尾の値を返します。

= 22があります。

VaRのB = 33。

警告(&& B); //出力33

 

そして、オブジェクトの配列を操作します

のみ0から単位でキー数値のJS配列

アレイブラケットを、長さのJS、括弧付きオブジェクト注:

 

ビルトインオブジェクトのJsを使用します

 

 

 

 

 

 

 

 

ウィンドウオブジェクト

JSウィンドウオブジェクトと、それは問題ではありませんが、ブラウザはJSが動作するためのオブジェクトの配列です。

Window.open()

ます。<script type = "text / javascriptの"> window.open( 'のhttp://www.imooc.com','_blank','width=300,height=200,menubar=no,toolbar=no、状態=無し、スクロールバー= YES')</スクリプト>

 

 

スコープ

ケース1:このパラメータは、関数内で見つからない場合、我々は常に、ウィンドウのプロパティを見つけるために、(機能外)グローバル空間まで、外を見続けます

ケース2:varは変数を宣言し、ローカル変数で宣言された関数内でのみ機能を属します。(例えば:A = 10)VARのない直接の割り当ては、場合。アウトこの変数を探しているだろう、割り当てはそれを見つけるか、あるいはデフォルトのウィンドウの変数名を割り当てます

 

 

 

 

ラベルオブジェクトのルックアップテーブル

H3CないHTMLのDOMマニュアルへの道を探します

方法名如果返回是集合则getElements ,如class,P等标签都不是唯一的所以s

id唯一返回对象,P等不唯一返回集合

 

 

根据id获取

 

 

根据标签找对象

 

 

对于表单元素,可以使用name寻找

 

 

按照类名查找

 

 

根据结点查找

 

 

 

对象的操作

img对象 下还有多个属性

 

img.src   img.style.width

 

注意 :

<div class="ch"> 中操作div对象的修改class名字属性用div.className = 

CSS样式与DOM : obj.style.width

CSS属性带横线则 去之首字大写 : border-top à obj.style.borderTop

注意 :此处获取宽高是把CSS内嵌,比较方便;并且返回的是字符串形式

实战 每次点击变颜色并且边框增大10像素

 

Object.style.display = none/block  实现隐藏和显示

Object.className = name 实现修改类名

 

获取内联样式属性

获取内存中在渲染的style的值,使用obj.currrentStyle() 和 window.getComputedStyle()获取

window.getComputedStyle(obj,伪元素)[arrt] : 

obj获取运算后的样式目标元素 ; 

伪元素 : 一般为null,可以修改为鼠标放上去的状态‘:active’

 

获取的值只读即是只能获取,不能直接修改,要修改还是要通过obj.style.属性 修改

内联样式一开始不能够获取是因为一开始没有定义内联定义,但是能够初始化赋值

获取的颜色返回是RGB形式的

 

注意:只有IE和Opera支持使用currentStyle获取HTMLElement的计算后的样式

标准浏览器使用getComputedStyle(),对此兼容性问题,使用封装进方法中进行判断使用哪个。obj即是对象名,arrt是获取属性名

 

 

对象的创建和删除 node.html

 

 

暴力结点 nodein.html

innerHTML 是结点的一个属性值,代表结点内的内容,即是某标签内的内容

 

 

级联菜单的制作 jilianorder.html

 

 

定时器的使用

不是js的内容属于浏览器的

setTimeout (表达式,延时时间) : 设置在延迟多少时间执行一次一个表达式

clearTimeout(名); 设置清除这个延迟器

 

setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式;多次执行

clearInterval() 方法取消 setInterval() 的设置

おすすめ

転載: www.cnblogs.com/husam/p/11007487.html