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 相关文章推荐
XRegExp 0.2: Now With Named Capture
Nov 30 Javascript
JQuery1.4+ Ajax IE8 内存泄漏问题
Oct 15 Javascript
javascript连续赋值问题
Jul 08 Javascript
javascript设计简单的秒表计时器
Sep 05 Javascript
jQuery中attr()与prop()函数用法实例详解(附用法区别)
Dec 29 Javascript
在Web项目中引入Jquery插件报错的完美解决方案(图解)
Sep 19 Javascript
bootstrap table复杂操作代码
Nov 01 Javascript
mint-ui的search组件在键盘显示搜索按钮的实现方法
Oct 27 Javascript
webpack打包js的方法
Mar 12 Javascript
vue.js使用3DES加密的方法示例
May 18 Javascript
layui在form表单页面通过Validform加入简单验证的方法
Sep 06 Javascript
微信小程序如何实现精确的日期时间选择器
Jan 21 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
关于文本留言本的分页代码
2006/10/09 PHP
分享下页面关键字抓取www.icbase.com站点代码(带asp.net参数的)
2014/01/30 PHP
PHP实现根据数组的值进行分组的方法
2017/04/20 PHP
PHP7新增函数
2021/03/09 PHP
Jquery chosen动态设置值实例介绍
2013/08/08 Javascript
javascript 循环调用示例介绍
2013/11/20 Javascript
原生js实现淘宝首页点击按钮缓慢回到顶部效果
2014/04/06 Javascript
每天一篇javascript学习小结(面向对象编程)
2015/11/20 Javascript
js阻止浏览器默认行为的简单实例
2016/05/15 Javascript
玩转JavaScript OOP - 类的实现详解
2016/06/08 Javascript
浅谈express 中间件机制及实现原理
2017/08/31 Javascript
Angularjs cookie 操作实例详解
2017/09/27 Javascript
微信小程序支付PHP代码
2018/08/23 Javascript
微信小程序wx:for循环的实例详解
2018/10/07 Javascript
小程序实现订单倒计时功能
2019/04/23 Javascript
vue 对象添加或删除成员时无法实时更新的解决方法
2019/05/01 Javascript
js 下拉菜单点击旁边收起实现(踩坑记)
2019/09/29 Javascript
vue动态渲染svg、添加点击事件的实现
2020/03/13 Javascript
vue开发移动端底部导航条功能
2020/04/08 Javascript
VUE+elementui组件在table-cell单元格中绘制微型echarts图
2020/04/20 Javascript
Python基于win32ui模块创建弹出式菜单示例
2018/05/09 Python
Django认证系统实现的web页面实现代码
2019/08/12 Python
Python+OpenCv制作证件图片生成器的操作方法
2019/08/21 Python
python 解决Fatal error in launcher:错误问题
2020/05/21 Python
python用tkinter实现一个简易能进行随机点名的界面
2020/09/27 Python
利用Pycharm + Django搭建一个简单Python Web项目的步骤
2020/10/22 Python
HTML5 video循环播放多个视频的方法步骤
2020/08/06 HTML / CSS
New Balance加拿大官方网站:运动鞋和健身服装
2018/11/19 全球购物
Booking.com德国:预订最好的酒店和住宿
2020/02/16 全球购物
会计助理的岗位职责
2013/11/29 职场文书
决定成败的关键——创业计划书
2014/01/24 职场文书
《狐假虎威》教学反思
2014/02/07 职场文书
音乐兴趣小组活动总结
2014/07/07 职场文书
处级领导班子全部召开专题民主生活会情况汇报
2014/09/27 职场文书
优秀创业计划书分享
2019/07/19 职场文书
mysql数据库实现设置字段长度
2022/06/10 MySQL