2015阿里校招前端在线题目[通俗易懂]

2015阿里校招前端在线题目

大家好,又见面了,我是全栈君。

5.淘宝首页须要实现这样一个功能。对于页面上非taobao.com域名下的链接。在用户点击时,须要在链接处弹出提示框,提示用户此链接非淘宝域名下的链接。并给与用户选择是否继续訪问。假设用户确认继续訪问,则在新窗体打开链接。请写出对应的代码。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
	</head>
	<body>
		<a href="http://www.taobao.com">taobao.com</a>
		<a href="http://www.taobao.com">taobao.com</a>
		<a href="http://www.sina.com">www.sina.com</a>
		<script type="text/javascript">
		(function(){
			var hrefs = document.getElementsByTagName("a");
			for(var i = 0, len = hrefs.length; i<len; i++){
					var href = hrefs[i].getAttribute("href");
					hrefs[i].onclick = function(href){
						return function(){
							var reg = new RegExp("http://www.taobao.com");
							if(reg.exec(href)){
								return true;
							}else{
								return window.confirm(href + "非本地网站。是否继续?");
							}
						}
					}(href);
			}
		})();
		</script>
	</body>
</html>

还有一种方法,对事件进行处理。

这样做的优点是避免了对每个a标签进行逐个绑定。节省了时间开销。另外代码更简洁。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
	</head>
	<body>
		<a href="http://www.taobao.com">taobao.com</a>
		<a href="http://www.taobao.com">taobao.com</a>
		<a href="http://www.sina.com">www.sina.com</a>
		<script type="text/javascript">
		(function(){
			var b=document.body;
			var reg=new RegExp("http://www.taobao.com");
			function doClick(event){
				if(event.target.tagName=='A'){
					event.preventDefault();   //阻止a标签的默认行为即跳转
					var href = event.target.href;
					if(reg.exec(href)){
						location.href=href;
					}else{
						if(window.confirm(href + "非本地网站。是否继续?")){
							location.href=href;
						}
					}
				}
			}
			b.onclick=doClick;
		})();
		</script>
	</body>
</html>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116031.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • Java开发手册之日志规约

    Java开发手册之日志规约Java开发手册之日志规约

    2022年4月22日
  • matlab直方图均衡化代码各种方法_数据直方图matlab代码

    matlab直方图均衡化代码各种方法_数据直方图matlab代码学习目标:1.直方图均衡化在matlab的实现学习产出p=imread(‘liena.jpg’);g=rgb2gray(p);%读取图片灰度化的图像x=size(g,1);y=size(g,2);%得到图片的格式g_r=imhist(g)./(x*y);%图像的离散化直方图s=zeros(256,1);%均衡化直方图的容器picure=im2uint8(zeros(x,y));%均衡化后的图像的容器fori=1:256foru=1:is(i)=s(i)+g_…

    2022年8月31日
  • 冒泡排序详解_超详细电音

    冒泡排序详解_超详细电音1、什么是冒泡排序?冒泡排序的英文BubbleSort,是一种最基础的交换排序。之所以叫做冒泡排序,因为每一个元素都可以像小气泡一样,根据自身大小一点一点向数组的一侧移动。冒泡排序的原理:每一趟只能确定将一个数归位。即第一趟只能确定将末位上的数归位,第二趟只能将倒数第2位上的数归位,依次类推下去。如果有n个数进行排序,只需将n-1个数归位,也就是要进行n-1趟操作。而“每一趟”都需要从第一位开始进行相邻的两个数的比较,将较大的数放后面,比较完毕之后向后挪一位继续比较下面

    2022年10月19日
  • 表结法和账结法_我国采用表结法还是账结法

    表结法和账结法_我国采用表结法还是账结法为了计算出当期利润,通常采用两种方法:表结法和账结法。国内一些财务系统多采用账结法,这似乎比较符合中国式习惯。即:期末,损益类的虚账户的余额结转汇总到本年利润科目,最后账户无余额;资产负债类实账户结

    2022年8月4日
  • html中table美化,漂亮的css table样式「建议收藏」

    html中table美化,漂亮的css table样式「建议收藏」工作中发邮件通知人员样式总是一个麻烦事,工作的严肃性不能让邮件样式太花哨,但是又不能太简陋,所以找了下面的table样式和大家分享。效果如下图所示:漂亮CSSTables-幸凡学习网body{font:normal11pxauto”TrebuchetMS”,Verdana,Arial,Helvetica,sans-serif;color:#4f6b72;backgroun…

    2022年9月20日
  • vue项目管理_vue适合做管理系统吗

    vue项目管理_vue适合做管理系统吗口述vue后台管理系统流程(面试可用)后台页面的权限验证与安全性是非常重要的,可以说是一个后台项目一开始就必须考虑和搭建的基础核心功能我们前端所要做的是:不同的权限对应着不同的路由,同时侧边栏也需要根据不同的权限,异步生成.技术栈主要有:vue,vue-router,vuex,axios,vue-cli3.x(没有webpack.config.js配置文件,取而代之的是vue.c…

    2022年9月3日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号