1、为什么会有跨域问题的存在? JavaScript出于安全方面的考虑,不允许跨域调用其他页面的对象,即同源政策。 2、什么是同源? 1995年,同源政策由 Netscape 公司引入浏览器。目前,所有浏览器都实行这个政策。 最初,它的含义是指,A网页设置的 Cookie,B网页不能打开,除非这两个网页"同源"。所谓"同源"指的是"三个相同"。 (1)协议相同 (2)域名相同 (3)端口相同 具体实例 比如:http:/......
目前大部分浏览器的广告拦截规则都是广告黑名单+一些广告字眼匹配,比如百度联盟、搜狗联盟、Google联盟这些就算在广告黑名单里的,一般广告过滤都会过滤掉这些广告联盟代码。剩下的就是广告字眼匹配,比如js地址包含ads.php、ad.js甚至是gg.js都可能会被过滤,360浏览器甚至会把包含ad.gif、960x90.jpg带有广告字眼的图片地址都会屏蔽掉。如果我们自己投放自定义的广告,一定要尽量避免这些广告字眼。 面对广告被拦截,让浏览器......
当浏览器禁用cookie后,php中的session一般还是可以使用的,但安全性会降低。 一、cookie和session的关系 cookie和session的区别在于cookie是保存在客户端的,而session是存储在服务端中。它们都有生存时间的设置,session比cookie更安全。当服务端与客户端通信后会生成会话后,会建立一个和浏览器的唯一会话PHPSESSID。这个id会在服务端保存,也会用cookie形式保存在客户端中。 二、禁用cookie的影响 禁用cookie......
兼容各种浏览器的背景音乐循环播放的JS代码,具体代码如下: var bgSoundFile = "http://php.hhsy.cc/style/bgsound.mp3"; if (navigator.userAgent.toLowerCase().indexOf("msie") != -1) { document.write('<bgsound src="' + bgSoundFile + '" loop="-1">'); } else if (navigator.userAgent.toLowerCase().indexOf("firefox") != -1) { document.write('<object data="' + bgSoundFile + '" type="applicatio......
jquery获取浏览器的各种高度总结,现在才发现以前用js获取这些数据是多么的麻烦,jquery一句话就搞定了还把各浏览器的兼容性问题也给解决了。 alert($(window).height()); //浏览器时下窗口可视区域高度 alert($(document).height()); //浏览器时下窗口文档的高度 alert($(document.body).height());//浏览器时下窗口文档body的高度 alert($(document.body).outerHeight(true));//浏览器时下窗口文档body的总高度 包括border pad......
由于工作中经常碰到页面需要弹窗这种效果的,于是从网上下载的一些弹窗效果研究了下,总感觉有些弹窗效果虽然很酷,但问题很多,更要命的是代码一大堆大堆的,看着很头痛,于是根据实际需要自己用jquery写了一个弹窗效果并做成了插件的形式,有需要的可以下载下来看看。 jquery弹出窗口插件(兼容所有浏览器)效果 需要说明的是本例实现的比较粗糙,读者可以根据自己的实际情况做相应的修改,代码挺简单,看得懂jquery代码一定能看......
在网页中嵌入的flash,默认是居于网页所有层中的最顶层的,即使设置z-index为多小也不起作用的。那么在当一个div层和一个flash对象在显示上有交集的时候,如何将这个div层显示在flash之上呢? 下面是作者在网上看到的解决办法。 其实只需要对flash对象设置就行了,不需要设置z-index属性值,只需要设置flash的一个属性:wmode。 关于如何在网页中嵌入flash的代码可以参照本站文章: 页面插入flash的代码 具体代码这里就不贴出......
html中如果需要设置某一层的背景为透明该如何去设置呢?下面分享一下如何使用css设置透明层效果,经过证实是兼容目前所有浏览器的。 首先看一下效果图: 下面是具体的代码(以上效果设置的是0.8): .transparent{ filter:alpha(opacity=50); -moz-opacity:0.5; -khtml-opacity: 0.5; opacity: 0.5; } 下面是对以上CSS代码的一些补充说明: opacity:0.5;这个属性是目前在CSS里面设置透明度的标准属性。适用于大......
web开发中有没有碰到需要适时的将结果输出到浏览器页面而不刷新整个页面的需求呢?当你在处理一个过程需要耗时很长,但你又需要适时的知道程序当前的处理状况的时候,该怎么办呢?下面就分享一下如何使用php及时的输出当前结果到浏览器而不刷新整个页面的效果吧。 下面以一个简单的例子来说明这个问题。首先来看一段代码: <?php for($i=0;$i<10;$i++){ echo $i; sleep(1); } ?> 上面这段程序如果在PHP解释器中......
给网页设置背景音乐本是个很平常的功能,可最近却为这个大伤脑筋,原本一段好好的背景音乐代码在各种浏览器下都是好好的,但在客户的苹果电脑上的苹果浏览器里面就是没有声音,不过最终还是另辟蹊跷的给解决了,说他兼容所有浏览器,我想他既然连苹果这个怪胎都兼容了,其他的应该不会再出什么状况了吧。 先发一段正常的背景音乐设置代码: <object data="{$bgsound}" type="application/x-mplayer2" width="0" height="0"> <......
分享一个利用jquery实现的下拉菜单效果,代码简洁易修改。这里使用jquery分别实现了两种下拉菜单的效果,其实原理是一样的,经测试是兼容IE,火狐等各大主流浏览器的。下面贴一下这个下拉菜单的效果图。 jquery下拉菜单效果一: jquery下拉菜单效果二: 下面将效果一的代码贴一下,如果需要效果二的代码的话,可以自己修改或者在下面下载源码即可。 <html xmlns="http://php.hhsy.cc/jquery-effects/114.html"> <......
分享一个通过jquery获取浏览器类型和浏览器版本号的函数方法。具体jquery代码如下: $(document).ready(function(){ varbrow=$.browser; varbInfo=""; if(brow.msie){bInfo="MicrosoftInternetExplorer"+brow.version;} if(brow.mozilla){bInfo="MozillaFirefox"+brow.version;} if(brow.safari){bInfo="AppleSafari"+brow.version;} if(brow.opera){bInfo="Opera"+brow.version;} alert(bInfo); }); jQuery ......
做web开发经常会碰到需要获取浏览器的滚动条与顶部和底部的距离,然后做相应的处理动作。下面作者就如何通过js来获取浏览器滚动条距离浏览器顶部和底部的高度做一下分享,这个是同时兼容ie和firefox的。 首先我们需要知道的两个定义是: 滚动条距离浏览器顶部的高度 = 窗口滚动条高度; 滚动条距离浏览器底部的高度 = 文档(页面)内容实际高度 - 滚动条距离浏览器顶部的高度 - 窗口可视范围的高度; 好了,明白了这个定义,那......
最近有个项目中遇到这样一个问题: 有一个用于展示数据的带滚动条的DIV块,业务需求是当滚动条滚动时,将数据库中的数据读出并展示出来。这个本身问题不大,但实际中却发现存在这样一个问题,即当数据量比较大的时候,当滚动条滚动时,会不停的向后台发出数据请求,这个在访问量达到一定规模的时候,对服务器和浏览器都造成了巨大的压力。 为了解决这个问题,作者想到一个办法是当滚动条停止时,才向服务器发送请求数据。但是碰......
利用js打造的一个非常实用简易的文本编辑框,可以显示行号并且同时兼容ie和firefox等主流浏览器,如下效果图: 以下是该效果的源码: <html> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <title>显示行号的文本框效果,兼容ie、火狐等浏览器</title> <style type="text/css"> #main{color:#666} textarea{border:1px solid #7f9db9;font-size:9pt;width:430px;color:#000} .grey{col......
这篇文章和大家分享一个 javascript 在浏览器地址栏上的特效,非常的有趣。它可以使页面上所有的图片元素一个个得排列起来并不停的转圈。因为转圈弧度为半圆且棱角分明,我们姑且称之为风火轮效果吧!这个javascript特效代码如下: javascript:R=0;x1=.1;y1=.05;x2=.25;y2=.24;x3=1.6;y3=.24;x4=300;y4=200;x5=300;y5=200;DI=document.getElementsByTagName("img");DIL=DI.length;function A(){for(i=0;i-DIL;i++){DIS=DI[i].st......
今天给一家网站做了个弹出咨询框效果,做完后发现在火狐浏览器(360浏览器)里面弹出的div层总是被页面上的flash层给遮盖住了,在IE浏览器下面倒是没有问题。上网搜了搜,找到了解决办法,现就如何解决DIV层被Flash遮盖问题(兼容IE和火狐浏览器)做一下分享。 对于IE浏览器下解决DIV层被Flash遮盖的问题可在页面加载flash的代码段中加入如下参数: <param name="wmode" value="transparent" /> 对于firefox浏览器下解决DIV层......
CSS浏览器兼容解决总结如下: 1. CSS中几种浏览器对不同关键字的支持,可进行浏览器兼容性重复定义 !important 可被FireFox和IE7识别 * 可被IE6、IE7识别 _ 可被IE6识别 *+ 可被IE7识别 区别IE6与FF: background:orange;*background:blue; 区别IE6与IE7: background:green !important;background:blue; 区别IE7与FF: background:orange; *background:green; 区别FF,IE7,IE6: background:orange;*background:green !......
天下文章一大抄!很多优质原创的文章一夜间就能够在互联网上传了个遍。做SEO的都知道,发原创文章对自己网站的优化是非常好的,特别是在搜文章标题的时候,原创的一般排名第一。但是优化是给搜索引擎看的。而在互联网有个很头痛的问题,一篇文章对搜索引擎来说到底谁是原创。这个是不一定的。举个简单例子:比如你在博客(当然假设你博客每日访问量很低,每天就几百人的情况下)上发表了一篇优质原创文章。但没过几小时或几天被人......
一般我们要查看网上的一个网页,那么当您第一次访问这个网页的时候,系统首先要将这个网页下载到您的本地计算机的一个临时文件夹中进行缓存,当在一定的时间内,您第二次、第三次来访问这个网页的时候,浏览器就直接从您的本地计算机的临时文件夹中读取这个文件显示,这样做的好处就是避免每次都要重新下载而占用大量的时间和网络资源,不得不说页面的缓存加快了网页的显示,当然也有它的坏处,例如当服务器上的网页己经更新,而本......
下面收集了一个函数是对浏览器的 URL 的字段内容进行过滤的,防止被 SQL 注入攻击用的。 function inject_check($content){ $check=eregi('select|insert|update|delete|\'|\/\*|\*|\.\.\/|\.\/|union|into|load_file|outfile',$content); if($check){ //echo "你输入的内容有可能对本站造成危害!"; return true; }else{ return false; } }
分享非常不错的一个使用 JavaScript 实现的可最小化,可关闭的右下角浮动广告窗效果,可以随滚动条的滚动而自行滚动保持在右下角的固定位置。基本上兼容了所有的浏览器(包括IE 火狐 谷歌浏览器 苹果浏览器)!下面先上效果图(效果图其实可以直接参看本站的右下角广告就是了,O(∩_∩)O~): 右下角弹出漂浮广告效果(兼容多浏览器)具体代码如下( js 压缩过了,如果需要研究里面的 js 源码,可下载附件看): <html xmlns......
使用 javascript 判断当前用户点击的是鼠标左键还是右键是很简单的,只需要给对象加上 onmousedown 事件,通过 javascript 的 e.button 值来进行判断,下面直接上例子。 document.onmousedown=judgeMouseButton; function judgeMouseButton(e){ var e=window.event||e;//获取事件对象 var value=e.button; if(value==2||value==3){ alert('点击的是鼠标右键'); }else{ alert('点击的是鼠标左键'); } }
最近看到Q群里有人说chrome(谷歌浏览器)不支持form.submit方法,求解决办法。闲的时候亲自测试了一番,发现chrome竟然真的不支持form.submit,测试的时候用的是Jquery的,也不支持,于是乎研究了半天,终于找到了一个解决办法。 //获取form表单的id var form=$('#myform').val(); //获取浏览器参数 var browserName=navigator.userAgent.toLowerCase(); if(/chrome/i.test(browserName)&&/webkit/i.test(browserName)&&/m......
缓存的主要作用是防止用户频繁刷新网站页面,导致服务器数据库负担,既要保证信息更新的及时性,也要保证缓存能被充分利用。http协议里控制浏览器缓存的头有三个Cache-Control,Expires,Last-Modified,在PHP下控制请求页面的浏览器缓存主要是利用php的 header()函数进行设置的。下面来了解一下这三个http协议里面控制缓存头的含义以及如何使用php设置这三种头标的方式吧! (1)Cache-Control:即缓存控制,指定请求和响应遵循......
今天做的项目需要根据用户浏览器的类型而做一些不同的处理,于是稍微研究了一下使用php判断浏览器类型的方法,发现解决这个问题其实很简单,只要熟悉 $_SERVER['HTTP_USER_AGENT'] 这个常量的用法就行了。下面我们就来通过 $_SERVER['HTTP_USER_AGENT'] 来写一个php判断浏览器类型的办法。 function my_get_browser(){ if(empty($_SERVER['HTTP_USER_AGENT'])){ return '命令行,机器人来了!'; } if(false!==strpos($......
在使用JavaScript做WEB键盘事件侦听捕获时,主要采用onkeypress,onkeydown,onkeyup三个事件,这三个事件执行的顺序为:onkeydown,onkeypress,onkeyup,在一般情况下,采用三种键盘事件均可对键盘输入进行有效的响应,但实际应用的时候会有些许差异,onkeypress事件不能对系统功能键(例如:删除,后退等,其中对中文输入法不能有效的响应)进行正常的响应,onkeydown和onkeyup均可以对系统功能键进行有效的拦截,但事件捕获的......
CSS对浏览器的兼容性有时让人很头疼,或许当你了解当中的技巧跟原理,就会觉得也不是难事,从网上收集了IE7,6与Fireofx的兼容性处理方法并整理了一下.对于web2.0的过度,请尽量用xhtml格式写代码,而且DOCTYPE 影响 CSS 处理,作为W3C的标准,一定要加 DOCTYPE声名. CSS技巧 1.div的垂直居中问题 vertical-align:middle; 将行距增加到和整个DIV一样高 line-height:200px; 然后插入文字,就垂直居中了。缺点是要控制内容不要换行 ......
JS判断浏览器类型的方法总结,可判别当前客户端所使用的浏览器是ie,firefox,safari,chrome或者是opera,另外js可以精确判断到ie浏览器的版本,依然直接上代码,需要的朋友可按照自己的要求进行修改。 第一种方法: var Browser=new Object(); Browser.isMozilla=(typeof document.implementation!='undefined')&&(typeof document.implementation.createDocument!='undefined')&&(typeof HTMLDocument!='undefined'); Bro......
发一个同时兼容IE6,IE7,IE8,IE9,火狐,苹果等所有浏览器的鼠标移动到文字上出现浮层提示特效,效果非常棒,可以根据具体的情况稍作修改: <html> <head> <title>鼠标移动到文字上出现提示特效</title> </head> <body> <script> function $(id){ return document.getElementById(id); } document.write("<div id=\"ts\" style=\"position:absolute;background-color:#FFFFE6;font-size: 12px;padding: 3px; border......