HTML DOM 快速導覽 - 元素物件 <map> (HTMLMapElement)

<map> 為 HTML 文件的內嵌元素 (embedded content) , DOM 介面為 HTMLMapElement 。



取得 <map> 的元素物件 (object) 後,可存取元素的全域屬性 (global attribute) 。 HTMLMapElement 另有定義屬性
  • name
  • areas
  • images


name 對應到 <map> 相同名稱的屬性, areas 回傳所有 <area> 的 HTMLCollection 的集合物件, images 則是回傳所有 <img> 與 <object> 的 HTMLCollection 集合物件。舉例如下
function run() {
    var d = document.getElementsByTagName("map");
    var s = document.getElementById("show");
    s.innerHTML = d[0].name;
}

/* 《程式語言教學誌》的範例程式
     http://pydoing.blogspot.com/
     檔名:htmldemo114.js
     功能:示範 JavaScript 程式 
     作者:張凱慶
     時間:西元 2011 年 8 月 */


此例用 document 物件的 getElementsByTagName() 方法 (method) ,取得標籤名稱為 map 的 HTMLCollection 物件,文件的第一個 <map> 元素亦即該 HTMLCollection 索引值為 0 的物件
var d = document.getElementsByTagName("map");
var s = document.getElementById("show");
s.innerHTML = d[0].name;


然後在 id 屬性 (attribute) 為 show 的元素中顯示 name 屬性。


我們以下面的 HTML 文件載入
<!DOCTYPE html>
<html>
<head>
<title>HTML DOM DEMO</title>
<script src="htmldemo114.js" type="text/javascript"></script>
</head>
<body>
<div>
<map name="demo">
<area shape="rect" coords="0, 0, 250, 187" href="mapdemo01.html">
<area shape="rect" coords="250, 0, 500, 187" href="mapdemo02.html">
<area shape="rect" coords="0, 187, 250, 375" href="mapdemo03.html">
<area shape="rect" coords="250, 187, 500, 375" href="mapdemo04.html">
</map>
<object type="image/jpg" usemap="#demo" width="500" height="375" data="example.jpg" />
載入失敗....
</object>
</div>
<input type="button" value="RUN" onclick="run();">
<div>Result: <span id="show"></span></div>
</body>
</html>

<!-- 《程式語言教學誌》的範例程式
     http://pydoing.blogspot.com/
     檔名:htmldemo114.html
     功能:示範 JavaScript 程式 
     作者:張凱慶
     時間:西元 2011 年 8 月 -->


另外 mapdemo01.html 、 mapdemo02.html 、 mapdemo03.html 、 mapdemo04.html 如下
<html>
<head>
<title>網頁標題</title>
</head>
<body>
您點擊了圖片的左上方...<br />
<a href="htmldemo114.html">上一頁</a>
</body>
</html>

<!-- 《程式語言教學誌》的範例程式
     http://pydoing.blogspot.com/
     檔名:mapdemo01.html
     功能:示範 JavaScript 程式 
     作者:張凱慶
     時間:西元 2011 年 8 月 -->


<html>
<head>
<title>網頁標題</title>
</head>
<body>
您點擊了圖片的右上方...<br />
<a href="htmldemo114.html">上一頁</a>
</body>
</html>

<!-- 《程式語言教學誌》的範例程式
     http://pydoing.blogspot.com/
     檔名:mapdemo02.html
     功能:示範 JavaScript 程式 
     作者:張凱慶
     時間:西元 2011 年 8 月 -->


<html>
<head>
<title>網頁標題</title>
</head>
<body>
您點擊了圖片的左下方...<br />
<a href="htmldemo114.html">上一頁</a>
</body>
</html>

<!-- 《程式語言教學誌》的範例程式
     http://pydoing.blogspot.com/
     檔名:mapdemo03.html
     功能:示範 JavaScript 程式 
     作者:張凱慶
     時間:西元 2011 年 8 月 -->


<html>
<head>
<title>網頁標題</title>
</head>
<body>
您點擊了圖片的右下方...<br />
<a href="htmldemo114.html">上一頁</a>
</body>
</html>

<!-- 《程式語言教學誌》的範例程式
     http://pydoing.blogspot.com/
     檔名:mapdemo04.html
     功能:示範 JavaScript 程式 
     作者:張凱慶
     時間:西元 2011 年 8 月 -->


瀏覽器 (browser) 開啟 htmldemo114.html ,按 RUN 後如下



中英文術語對照
內嵌元素embedded content
物件object
全域屬性global attribute
方法method
屬性attribute
瀏覽器browser


您可以繼續參考
HTML 5 範例

HTML 元素物件


相關目錄
HTML DOM 快速導覽
JavaScript 教材
首頁


參考資料
https://developer.mozilla.org/en/HTML/Element/map
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-map-element.html#the-map-element

沒有留言: