HTML 5 快速導覽 - 內嵌元素 <map>

<map> 為 HTML 文件的內嵌元素 (element) ,用來製作圖形地圖。



<map> 除了全域屬性外,另有定義一個屬性 (attribute)
  • name


name 為圖形地圖的名稱。


此外, <map> 的文件物件模型 (DOM) 介面為 HTMLMapElement ,另有定義屬性如下
  • name
  • areas
  • images


舉例如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<!DOCTYPE html> 
<html
  <head
     <title>HTML 5 DEMO</title>
     <style>
       header, nav, section, article, footer {
         display: block;
       }
       header, nav, section, article, footer {
         color: white;
       }
       header, footer {
         text-align: center;
         width: 100%;
       }
       header {
         background-color: red;
         font-size: 36px;
         font-weight: bold;
       }
       nav {
         position: fixed;
         top: 40px;
         right: 25px;
         background-color: blue;
         width: 100px;
       }
       section {
         width: 86%;
         background-color: gray;
         padding: 20px;
         margin: 20px;
       }
       footer {
         background-color: green;
         font-size: 10px;
       }
     </style>
  </head
  <body onload="run();"
    <header
       header 
    </header
    <nav
      <ul>
        <li>nav 1</li>
        <li>nav 2</li>
      </ul
    </nav>
    <section>
      <article>
        <map name="demo">
          <area shape="rect" coords="0, 0, 200, 150" href="mapdemo01.html">
          <area shape="rect" coords="200, 0, 400, 150" href="mapdemo02.html">
          <area shape="rect" coords="0, 150, 200, 300" href="mapdemo03.html">
          <area shape="rect" coords="200, 150, 400, 300" href="mapdemo04.html">
        </map>
        <object type="image/jpg" usemap="#demo" width="400" height="300" data="example.jpg" />
          載入失敗....
        </object>
      </article>
    </section>     
    <footer
      <p>
        footer © 2011
      </p>      
    </footer
  </body
</html
 
<!-- 《程式語言教學誌》的範例程式
     檔名:maptest.html
     功能:示範 HTML 5 標記語言
     作者:張凱慶
     時間:西元 2011 年 12 月 -->


此例, <map> 放在 <section> 中
50
51
52
53
54
55
56
57
58
59
60
61
62
<section>
  <article>
    <map name="demo">
      <area shape="rect" coords="0, 0, 200, 150" href="mapdemo01.html">
      <area shape="rect" coords="200, 0, 400, 150" href="mapdemo02.html">
      <area shape="rect" coords="0, 150, 200, 300" href="mapdemo03.html">
      <area shape="rect" coords="200, 150, 400, 300" href="mapdemo04.html">
    </map>
    <object type="image/jpg" usemap="#demo" width="400" height="300" data="example.jpg" />
      載入失敗....
    </object>
  </article>
</section>


利用 Firefox 開啟如下



點擊圖片右下方就會連結到 mapdemo04.html



mapdemo01.html 到 mapdemo04.html 的原始碼如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<html>
<head>
<title>網頁標題</title>
</head>
<body>
您點擊了圖片的左上方...
 
</body>
</html>
 
<!-- 《程式語言教學誌》的範例程式
     檔名:mapdemo01.html
     功能:示範 HTML 5 標記語言的使用
     作者:張凱慶
     時間:西元 2011 年 12 月 -->
 
<html>
<head>
<title>網頁標題</title>
</head>
<body>
您點擊了圖片的右上方...
 
</body>
</html>
 
<!-- 《程式語言教學誌》的範例程式
     檔名:mapdemo02.html
     功能:示範 HTML 5 標記語言的使用
     作者:張凱慶
     時間:西元 2011 年 12 月 -->
 
<html>
<head>
<title>網頁標題</title>
</head>
<body>
您點擊了圖片的左下方...
 
</body>
</html>
 
<!-- 《程式語言教學誌》的範例程式
     檔名:mapdemo03.html
     功能:示範 HTML 5 標記語言的使用
     作者:張凱慶
     時間:西元 2011 年 12 月 -->
 
<html>
<head>
<title>網頁標題</title>
</head>
<body>
您點擊了圖片的右下方...
 
</body>
</html>
 
<!-- 《程式語言教學誌》的範例程式
     檔名:mapdemo04.html
     功能:示範 HTML 5 標記語言的使用
     作者:張凱慶
     時間:西元 2011 年 12 月 -->


中英文術語對照
元素element
屬性attribute
文件物件模型DOM


您可以繼續參考
JavaScript 範例

內嵌元素


相關目錄
HTML 5 快速導覽
HTML, CSS 教材
首頁


參考資料
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-map-element.html#the-map-element
http://www.w3.org/TR/2011/WD-html5-20110525/the-map-element.html#the-map-element

沒有留言: