JS+HTML实现的圆形可点击区域示例【3种方法】


Posted in Javascript onAugust 01, 2018

本文实例讲述了JS+HTML实现的圆形可点击区域。分享给大家供大家参考,具体如下:

方法一:

<img>通过usemap映射到<map>的circle形<area>

<img src="images/lanlvseImg.png" usemap="#Map" /> 
<map name="Map" id="Map">
 <area shape="circle" coords="100,100,50" href="http://www.baidu.com" rel="external nofollow" target="_blank"/>
</map>

方法二:

设置div的border-radius:50%

<div id="circle"></div>
#circle{
 background:red;
 width:100px;
 height:100px;
 border-radius:50%;
}

方法三:

JS实现,获取鼠标点击位置坐标,判断其到圆点的距离是否不大于圆的半径,来判断点击位置是否在圆内。

document.onclick = function(e) { 
 var r = 50; 
 var x1 = 100;
 var y1 = 100;
 var x2= e.clientX;
 var y2= e.clientY; 
 var distance = Math.abs(Math.sqrt(Math.pow(x2 - x1, 2) + Math.pow(y2 - y1, 2))); 
 if (distance <= 50)
 alert("Yes!"); 
}

感兴趣的朋友可以使用在线HTML/CSS/JavaScript前端代码调试运行工具:http://tools.3water.com/code/WebCodeRun测试一下运行效果。

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
Expandable &quot;Detail&quot; Table Rows
Aug 29 Javascript
在Javascript里访问SharePoint列表数据的实现方法
May 22 Javascript
jquery如何根据值设置默认的选中项
Mar 17 Javascript
使用JavaScript+canvas实现图片裁剪
Jan 30 Javascript
举例详解JavaScript中Promise的使用
Jun 24 Javascript
基于BootStarp的Dailog
Apr 28 Javascript
JQuery在循环中绑定事件的问题详解
Jun 02 Javascript
JS 中document.write()的用法和清空的原因浅析
Dec 04 Javascript
微信小程序上线发布流程图文详解
May 06 Javascript
后台使用freeMarker和前端使用vue的方法及遇到的问题
Jun 13 Javascript
vue v-model的用法解析
Oct 19 Javascript
JS实现页面侧边栏效果探究
Jan 08 Javascript
create-react-app 修改为多入口编译的方法
Aug 01 #Javascript
Vue项目全局配置页面缓存之按需读取缓存的实现详解
Aug 01 #Javascript
JavaScript执行环境及作用域链实例分析
Aug 01 #Javascript
Vue.js 利用v-for中的index值实现隔行变色
Aug 01 #Javascript
echarts设置图例颜色和地图底色的方法实例
Aug 01 #Javascript
看看“疫苗查询”小程序有温度的代码
Jul 31 #Javascript
Vue父子组件双向绑定传值的实现方法
Jul 31 #Javascript
You might like
PHP类的静态(static)方法和静态(static)变量使用介绍
2012/02/19 PHP
使用PHP会话(Session)实现用户登陆功能
2013/06/29 PHP
php连接oracle数据库及查询数据的方法
2014/12/29 PHP
php通过递归方式复制目录和子目录的方法
2015/03/13 PHP
jQuery formValidator表单验证插件开源了 含API帮助、源码、示例
2008/08/14 Javascript
IE innerHTML,outerHTML所引起的问题
2009/06/04 Javascript
JavaScript建立一个语法高亮输入框实现思路
2013/02/26 Javascript
js获取键盘按键响应事件(兼容各浏览器)
2013/05/16 Javascript
javascript事件委托的方式绑定详解
2015/06/10 Javascript
JS实现物体带缓冲的间歇运动效果示例
2016/12/22 Javascript
详解微信小程序 wx.uploadFile 的编码坑
2017/01/23 Javascript
jquery.flot.js简单绘制折线图用法示例
2017/03/13 Javascript
详解JS中的attribute属性
2017/04/25 Javascript
mpvue项目中使用第三方UI组件库的方法
2018/09/30 Javascript
javascript实现导航栏分页效果
2019/06/27 Javascript
vue3.0中的双向数据绑定方法及优缺点
2019/08/01 Javascript
Vue实现点击按钮复制文本内容的例子
2019/11/09 Javascript
Vue如何循环提取对象数组中的值
2020/11/18 Vue.js
[01:09]2014DOTA2国际邀请赛 TI4西雅图DOTA2 中国美女coser加油助威
2014/07/20 DOTA
忘记ftp密码使用python ftplib库暴力破解密码的方法示例
2014/01/22 Python
python 表达式和语句及for、while循环练习实例
2017/07/07 Python
Python基于贪心算法解决背包问题示例
2017/11/27 Python
分享Pycharm中一些不为人知的技巧
2018/04/03 Python
pytorch构建网络模型的4种方法
2018/04/13 Python
Python时间序列缺失值的处理方法(日期缺失填充)
2019/08/11 Python
python实现高斯判别分析算法的例子
2019/12/09 Python
Python3.6安装卸载、执行命令、执行py文件的方法详解
2020/02/20 Python
Python如何存储数据到json文件
2020/03/09 Python
Mamas & Papas沙特阿拉伯:英国最受欢迎的婴儿品牌
2017/11/20 全球购物
在校生钳工实习自我鉴定
2013/09/19 职场文书
护士自荐信
2013/10/25 职场文书
运动会演讲稿
2014/05/07 职场文书
小学生环保倡议书
2014/05/15 职场文书
志愿者宣传口号
2014/06/17 职场文书
公司财务会计主管应聘求职信
2014/09/26 职场文书
使用Python通过企业微信应用给企业成员发消息
2022/04/18 Python