2015阿里校招前端在线题目

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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>



以上是关于2015阿里校招前端在线题目的主要内容,如果未能解决你的问题,请参考以下文章

去哪儿网2017校招在线笔试(前端工程师)编程题及JavaScript代码

前端 2018 届校招笔试面经百度,阿里,腾讯,阿里文娱,携程,美团,拼多多

阿里2015 在线笔试

2016 阿里校招研发算法题 9.9

校招VIP出品:在线实习“约起来”活动发布模块实战

校招VIP出品:在线实习“职查查”大V信息认证实战