关于页面被拦截的问题

  1. ie

2.   TT

3.  maxthon

chrome , firefox 默认安装是没有页面拦截的, 都有一些对应的插件

测试的时候不能在本地测试, 要把页面放到http 服务器上。 
1. ie
页面拦截设为高, 所有方式都无法在新页打开。
拦截设为中, window.open , 直接写的页面上, new 一个a click,以及form submit 都可以打开页面, timeout 不能打开页面。
拦截设为低, 以上几种方式都可以打开。
ie6 submit 方式后会在url 后加上 ? 如http://www.baidu.com/?
2. maxthon
不继承ie的拦截设置。
maxthon 支持一定时间的timeout open , 现在测试大概是850 ms, 以上几种方式在timeour 大于850 不能打开页面。
3. chrome
chrome不支持timeout open 的方式, 跟ie 的一致。
4. TT
TT 自定义屏幕模式下不能用脚本打开新页面。
5. firefox
firefox 默认的方式没有拦截, 以上方式都可以打开。
代码

title

a {
display: block;
margin : 10px 0;
border: 2px solid #555;
width: 500px;
}

// chrome, maxthon 不拦截 ie拦截水平 '中' 会拦截
function test0() {
window.open('http://www.baidu.com');
}
function test_10() {
setTimeout(function() {
window.open('http://www.baidu.com');
}
, 10);
}
function test_local_100() {
setTimeout(function() {
window.open('http://' + location.host);
}
, 100);
}
function test_local() {
window.open('http://' + location.host);
}
// maxthon 不拦截 ie拦截水平 '中' 会拦截
function test() {
setTimeout(function() {
window.open('http://www.baidu.com');
}
, 500);
}
// maxthon 不拦截 ie拦截水平 '中' 会拦截
function test1() {
setTimeout(function() {
window.open('http://www.baidu.com');
}
, 850);
}
// maxthon 拦截 ie拦截水平 '中' 会拦截
function test2() {
setTimeout(function() {
window.open('http://www.baidu.com');
}
, 900);
}
// maxthon 拦截 ie拦截水平 '中' 会拦截
function test3() {
setTimeout(function() {
window.open('http://www.baidu.com');
}
, 1000);
}
// 以上几个在chrome 下拦截
//
// maxthon 不拦截 ie拦截水平 '高' 会拦截, firefox , chrome 不支持
function test4() {
var a = document.createElement('a');
a.href = "http://www.baidu.com/";
a.target="_blank";
document.body.appendChild(a);
a.click();
}
function test_ope() {
var a = document.getElementsByTagName('a');
for (var i = 0, len=10000; i

window.open
timeout 500ms window.open
timeout 850ms window.open
timeout 900ms window.open
timeout 1000ms window.open
new a click
timeout 10ms window.open
window.open local domain
timeout 100ms window.open local domain
test operation open

a href target blank
a href target blank local domain

div time 500

button time 500
img time out 500

form submit

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

小结一下:
1. 应用要在新页打开,使用 a 加上 href 把别的一些功能放在onclick 上, 如
<a href="http://www.baidu.com" target="_blank" onclick="alert(1)"></a>
2. 一些应用要在新页打开,跟cgi在关的, 可以使用http 302 跳转
<a href="http://www.example.com/cgi?myid=1" target="_blank" onclick="alert(1)"></a>
http://www.example.com/cgi?myid=1 将跳转到你想要的页面
3. 一定要用js在新页打开页面的, 用window.open 就可以
<a href="javascript;" onclick="window.open('http://www.baidu.com');return false;"></a>

(0)

相关推荐

  • 详解Struts2中对未登录jsp页面实现拦截功能

    Struts2中拦截器大家都很经常使用,但是拦截器只能拦截action不能拦截jsp页面.这个时候就有点尴尬了,按道理来说没登录的用户只能看login界面不能够通过输入URL进行界面跳转,这显然是不合理的.这里介绍Struts2中Filter实现jsp页面拦截的功能.(有兴趣的人可以去研究Filter过滤器的其它用法,因为利用过滤器也可以实现action拦截的功能) 下面直接上代码,边看边分析实现步骤和原理. 1.web.xml中的配置信息: <filter> <filter-name&

  • 关于页面被拦截的问题

    ie 2.   TT 3.  maxthon chrome , firefox 默认安装是没有页面拦截的, 都有一些对应的插件 测试的时候不能在本地测试, 要把页面放到http 服务器上. 1. ie 页面拦截设为高, 所有方式都无法在新页打开. 拦截设为中, window.open , 直接写的页面上, new 一个a click,以及form submit 都可以打开页面, timeout 不能打开页面. 拦截设为低, 以上几种方式都可以打开. ie6 submit 方式后会在url 后加上

  • Angularjs中的页面访问权限怎么设置

    在以往的项目中,前后端常见的配合方式是前端提供页面和ui加一点DuangDuangDuang的效果,后端搭建框架数据结构和数据交互(数据交互前后端有交集),不管是.net.java or php都能一对多的提供前端服务,然而在新形式下项目中运用了前端框架,开发情况就不一样了,比如我要说的这是在angular框架下完成的开发,模式是后端提供服务和api文档,页面和数据交互及逻辑处理由前端完成,前端俨然是个完全的programer了,这个过程中就会遇到之前意想不到的问题(如果没有做过后端开发),比如

  • [Alibaba-ARouter]浅谈简单好用的Android页面路由框架

    开发一款App,总会遇到各种各样的需求和业务,这时候选择一个简单好用的轮子,就可以事半功倍 前言 Intent intent = new Intent(mContext, XxxActivity.class); intent.putExtra("key","value"); startActivity(intent); Intent intent = new Intent(mContext, XxxActivity.class); intent.putExtra(&

  • Springboot中登录后关于cookie和session拦截问题的案例分析

    一.前言 1.简单的登录验证可以通过Session或者Cookie实现. 2.每次登录的时候都要进数据库校验下账户名和密码,只是加了cookie 或session验证后:比如登录页面A,登录成功后进入页面B,若此时cookie过期,在页面B中新的请求url到页面c,系统会让它回到初始的登录页面.(类似单点登录sso(single sign on)). 3.另外,无论基于Session还是Cookie的登录验证,都需要对HandlerInteceptor进行配置,增加对URL的拦截过滤机制. 二.

  • SpringBoot拦截器如何获取http请求参数

    1.1.获取http请求参数是一种刚需 我想有的小伙伴肯定有过获取http请求的需要,比如想 前置获取参数,统计请求数据 做服务的接口签名校验 敏感接口监控日志 敏感接口防重复提交 等等各式各样的场景,这时你就需要获取 HTTP 请求的参数或者请求body,一般思路有两种,一种就是自定义个AOP去拦截目标方法,第二种就是使用拦截器.整体比较来说,使用拦截器更灵活些,因为每个接口的请求参数定义不同,使用AOP很难细粒度的获取到变量参数,本文主线是采用拦截器来获取HTTP请求. 1.2.定义拦截器获

  • springboot Interceptor拦截器excludePathPatterns忽略失效

    springboot Interceptor拦截器excludePathPatterns忽略失效 excludePathPatterns方法是排除访问路径,但是当你排除的url路径在项目中并不存在的时候,springboot会将路径编程/error,从而无法进行排除. 例如下面代码: registry.addInterceptor(new MyInterceptor()).addPathPatterns("/**").excludePathPatterns("/login&q

  • Django中间件整合Vue拦截器的使用

    目录 axios拦截器是什么? 拦截器的使用 请求拦截器 响应拦截器 Django中间件token验证 中间件相关 自定义中间件 中间件的执行流程 用中间件进行登录认证 总结 axios拦截器是什么? axios拦截器可以拦截每一次的请求和响应,然后进行相应的处理.拦截器分为请求拦截器和响应拦截器,请求拦截器可以统一在你发送请求前在请求体里加上token:响应拦截器的话,是在接受到响应之后进行的一些操作,比如,服务器返回登录状态失效,需要重新登录的时候,就给它跳到登录页面: 拦截器的使用 我一般

  • springboot使用拦截器判断是否登录

    目录 springboot拦截器判断是否登录 实现拦截器的两个步骤 1.自定义拦截器 2.自定义配置类继承WebMvcConfigurerAdapter springboot 增加拦截器判断是否登录 1.创建拦截器 2.继承WebMvcConfigureAdapter类 3.LoginController 4.未登录会自动跳转到登录页面 springboot拦截器判断是否登录 实现拦截器的两个步骤 自定义拦截器实现HandlerInterceptor接口 创建一个配置类继承WebMvcConfi

  • spring security登录成功后跳转回登录前的页面

    目录 spring security登录成功后跳转回登录前的页面 需求如下 代码如下 Springsecurity 配置文件和登录跳转 项目结构 直接上springsecurity配置文件 自定义的登录页面login.html上需要加form标签登录框 具体修改如下 spring security登录成功后跳转回登录前的页面 我刚好碰到了这么一个需求,正好自己也刚开始学spring security,但是我百度了一下,发现都讲的好麻烦,其实大概了解完之后,亲自实践一下发现,操作非常简单. 需求如

随机推荐