Javascript基础_嵌入图像的简单实现


Posted in Javascript onJune 14, 2016

img元素允许我们在HTML文档里嵌入图像。

要嵌入一张图像需要使用src和alt属性,代码如下:

<img src="../img/example/img-map.jpg" alt="Products Image" width="580" height="266" />

显示效果:

Javascript基础_嵌入图像的简单实现

1 在超链接里嵌入图像

img元素的一个常见用法是结合a元素创建一个基于图像的超链接,代码如下:

<a href="otherpage.html">
  <img src="../img/example/img-map.jpg" ismap alt="Products Image" width="580" height="266" />
</a>

浏览器显示这张图片的方式没有什么不同。因此,重要的一点事要向用户提供视觉提示,表明特定图像所代表的是超链接。具体的做法可以是利用CSS,能在图像内容里表达则更好。

如果点击这种图片,浏览器会导航至父元素a的href属性所指定的URL上。给 img 元素应用 ismap 属性就创建了一个服务器端分部响应图,意思是在图像上点击的位置会附加到URL上。举个例子,如果点击的位置是距图像顶部8像素,左边缘10像素,浏览器就会导航到下面的地址:

https://yexiaochao.github.io/show4cnblogs/otherpage.html?10,8

下面代码展示了 otherpage.html 中的内容,它包含了一个简单的脚本,用来显示点击位置的坐标:

<body>
<p>The X-coordinate is <b><span id="xco">??</span></b></p>
<p>The Y-coordinate is <b><span id="yco">??</span></b></p>
<script type="application/javascript">
  var coords = window.location.href.split('?')[1].split(',');
  document.getElementById("xco").innerHTML = coords[0];
  document.getElementById("yco").innerHTML = coords[1];
</script>
</body>

浏览器显示这张图片的方式没有什么不同。因此,重要的一点事要向用户提供视觉提示,表明特定图像所代表的是超链接。具体的做法可以是利用CSS,能在图像内容里表达则更好。

如果点击这种图片,浏览器会导航至父元素a的href属性所指定的URL上。给 img 元素应用 ismap 属性就创建了一个服务器端分部响应图,意思是在图像上点击的位置会附加到URL上。举个例子,如果点击的位置是距图像顶部8像素,左边缘10像素,浏览器就会导航到下面的地址:

https://yexiaochao.github.io/show4cnblogs/otherpage.html?10,8

下面代码展示了 otherpage.html 中的内容,它包含了一个简单的脚本,用来显示点击位置的坐标:

<body>
<p>The X-coordinate is <b><span id="xco">??</span></b></p>
<p>The Y-coordinate is <b><span id="yco">??</span></b></p>
<script type="application/javascript">
  var coords = window.location.href.split('?')[1].split(',');
  document.getElementById("xco").innerHTML = coords[0];
  document.getElementById("yco").innerHTML = coords[1];
</script>
</body>

可以看到鼠标点击产生的效果:

Javascript基础_嵌入图像的简单实现

服务器端分区响应图通常意味着服务器会根据用户在图像上点击区域的不同做出有差别的反应,比如返回不同的响应信息。如果省略了img元素上的 ismap 属性,鼠标点击的坐标就不会被包含在请求 URL 中。

2 创建客户端分区响应图

我们可以创建一个客户端分区响应图,通过点击某张图像上的不同区域让浏览器导航到不同的URL上。这一过程不需要通过服务器引导,因此需要使用元素定义图像上的各个区域以及它们所代表的行为。客户端分区响应图的关键元素是 map,map元素包含一个或多个area元素,它们各自代表了图像上可被点击的一块区域 。

area元素的属性可以分为两类,第一类处理的是area所代表的图像区域被用户点击后浏览器会导航到的URL。下图介绍了这一类属性,它们类似于在其他元素上见到过的对应属性。

Javascript基础_嵌入图像的简单实现

第二类则包含了更有意思的属性:shape 和 coords 属性。可以用这些属性来标明用户可以点击的各个图像区域。 shape 和 coords 属性是共同起作用的。 coords 属性的意思根据 shape 属性的值而定,正如下图所示:

Javascript基础_嵌入图像的简单实现

介绍完这些元素后,举个例子,代码如下:

<body>
  <img src="../img/example/img-map.jpg" ismap alt="Products Image" usemap="#mymap" width="580" height="266" />

<map name="mymap">
  <area href="javascript:show_page(1)" shape="rect" coords="'34,60,196,230" alt="product 1" />
  <area href="javascript:show_page(2)" shape="rect" coords="'210,60,370,230" alt="product 2" />
  <area href="javascript:show_page(3)" shape="rect" coords="'383,60,545,230" alt="product 3" />
</map>

<script type="application/javascript">
   function show_page(num){
     //通过对话框显示产品,表示对应的跳转页面
     alert("This is product "+num);
   }
</script>
</body>

显示效果是一样的,只是在点击对应的产品图片,会弹出对应的产品名称,表示跳转的产品页面。

以上这篇Javascript基础_嵌入图像的简单实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于jquery的弹出提示框始终处于窗口的居中位置(类似于alert弹出框的效果)
Sep 28 Javascript
jQuery Jcrop插件实现图片选取功能
Nov 23 Javascript
IE关闭时判断及AJAX注销案例学习
Feb 18 Javascript
JS 去前后空格大全(IE9亲测)
Jul 15 Javascript
js实现幻灯片播放图片示例代码
Nov 07 Javascript
JavaScript获取XML数据附示例截图
Mar 05 Javascript
向JavaScript的数组中添加元素的方法小结
Oct 24 Javascript
jQuery实现简单的文件上传进度条效果
Mar 26 Javascript
vue-resourse将json数据输出实例
Mar 08 Javascript
从零开始学习Node.js系列教程之设置HTTP头的方法示例
Apr 13 Javascript
简单谈谈React中的路由系统
Jul 25 Javascript
vue弹窗消息组件的使用方法
Sep 24 Javascript
jQuery实例—选项卡的简单实现(js源码和jQuery)
Jun 14 #Javascript
浅析JS获取url中的参数实例代码
Jun 14 #Javascript
Javascript基础_标记文字的实现方法
Jun 14 #Javascript
深入浅析JavaScript的API设计原则
Jun 14 #Javascript
jQuery.Callbacks()回调函数队列用法详解
Jun 14 #Javascript
基于gulp合并压缩Seajs模块的方式说明
Jun 14 #Javascript
JS去除空格和换行的正则表达式(推荐)
Jun 14 #Javascript
You might like
PL-880隐藏功能
2021/03/01 无线电
PHP+Tidy-完美的XHTML纠错+过滤
2007/04/10 PHP
使用php批量删除数据库下所有前缀为prefix_的表
2014/06/09 PHP
详解PHP中的mb_detect_encoding函数使用方法
2015/08/18 PHP
yii2.0实现验证用户名与邮箱功能
2015/12/22 PHP
PHP使用正则表达式实现过滤非法字符串功能示例
2018/06/04 PHP
用JS判别浏览器种类以及IE版本的几种方法小结
2011/08/02 Javascript
Jvascript学习实践案例(开发常用)
2012/06/25 Javascript
固定表格行列(expression)在IE下适用
2013/07/25 Javascript
js 获取页面高度和宽度兼容 ie firefox chrome等
2014/05/14 Javascript
JavaScript中的Function函数
2015/08/27 Javascript
JS排序方法(sort,bubble,select,insert)代码汇总
2016/01/30 Javascript
设置jQueryUI DatePicker默认语言为中文
2016/06/04 Javascript
JS通过调用微信API实现微信支付功能的方法示例
2017/06/29 Javascript
vue 项目打包通过命令修改 vue-router 模式 修改 API 接口前缀
2018/06/13 Javascript
electron + vue项目实现打印小票功能及实现代码
2018/11/25 Javascript
使用vue-router在Vue页面之间传递数据的方法
2019/07/15 Javascript
微信小程序 checkbox使用实例解析
2019/09/09 Javascript
vue created钩子函数与mounted钩子函数的用法区别
2020/11/05 Javascript
JS实现鼠标移动拖尾
2020/12/27 Javascript
数组保存为txt, npy, csv 文件, 数组遍历enumerate的方法
2018/07/09 Python
python使用turtle绘制国际象棋棋盘
2019/05/23 Python
深入了解Python枚举类型的相关知识
2019/07/09 Python
使用pyqt 实现重复打开多个相同界面
2019/12/13 Python
如何通过Django使用本地css/js文件
2020/01/20 Python
TensorFlow2.0矩阵与向量的加减乘实例
2020/02/07 Python
python Paramiko使用示例
2020/09/21 Python
python海龟绘图之画国旗实例代码
2020/11/11 Python
Python实现区域填充的示例代码
2021/02/03 Python
利用 Canvas实现绘画一个未闭合的带进度条的圆环
2019/07/26 HTML / CSS
韩国江南富人区高端时尚百货商场:Galleria(格乐丽雅)
2018/03/27 全球购物
PHP如何调用MYSQL存储过程
2014/05/30 面试题
初三新学期计划书
2014/05/03 职场文书
服务明星事迹材料
2014/12/29 职场文书
2015年体检中心工作总结
2015/05/27 职场文书
高端收音机+蓝牙音箱,JBL TUNER FM带收音蓝牙音箱评测
2021/04/24 无线电