我一直试图在我的角度项目中完成这项工作,在互联网上搜索,似乎没有任何可能的答案能帮助我。
我的控制台说:
脚本只能关闭由它打开的窗口。
因为我试图用按钮关闭当前窗口。
<button onclick="window.close();">Close window</button>
当然,控制台消息中描述了原因。我无法关闭此窗口,因为这不是由javascript打开的。我的关闭窗口按钮第一次位于ng-view
内部并且无效,之后我将我的按钮移动到ng-view
之外的索引页面,得到了相同的结果:(
在我在互联网上发现这些变化和其他更多内容之后,我从头开始创建了一个项目,简单的应用程序,基本上只使用ng-app
上的index.html
和几个控制器什么也不做。这个按钮有效。
这有效:
<!DOCTYPE html>
<html ng-app="myApp">
<head lang="en">
</head>
<body ng-controller="MyController">
<button onclick="window.close();">Close window</button>
</body>
<script src="http://code.jquery.com/jquery-1.11.3.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.3/angular.min.js"></script>
<script src="MyControllers.js"></script>
</html>
这不起作用:
<!DOCTYPE html>
<!--[if lt IE 7]> <html lang="en" ng-app="myApp" class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]-->
<!--[if IE 7]> <html lang="en" ng-app="myApp" class="no-js lt-ie9 lt-ie8"> <![endif]-->
<!--[if IE 8]> <html lang="en" ng-app="myApp" class="no-js lt-ie9"> <![endif]-->
<!--[if gt IE 8]><!-->
<html lang="en" ng-app="myApp" class="no-js">
<!--<![endif]-->
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>my web</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
<body>
<my-nav-bar></my-nav-bar>
<div ng-view></div>
<button onclick="window.close();">Close window</button>
<script src="libs/jquery.js"></script>
<script src="libs/angular.js"></script>
<script src="libs/myapp/myapp.js"></script>
<script src="libs/myapp/mycontroller.js"></script>
<script src="libs/myapp/mydirectives.js"></script>
</body>
</html>
它说scripts may close only the windows that were opened by javascript
但是如果这两个HTML之间存在任何差异,任何人都可以通知我吗?如果不是,第一个html如何遵循此规则而第二个html不是“?