简介
Hosts文件是一个用于存储计算机网络中节点信息的文件,它可以将主机名映射到相应的IP地址,实现DNS的功能,它可以由计算机的用户进行控制。
Windows系统
Host文件位于
C:\\WINDOWS\\system32\\drivers\\etc
下,进入后看到如下图所示:
双击打开,选择打开方式:

使用记事本或者其他文本编辑器打开。

Host文件内容如下:

Host文件写法
1、host格式如下
<IP> <HOSTNAME>.<DOMAIN> <ALIAS>
2、一条host记录由两部分组成,指向的ip地址和被指向的域名,两者之间由空格(tab,多个空格均可)隔开
3、注释使用#
4、多个域名同时指向同一个ip,可以以下格式写:
127.0.0.1 weibo.com t.sina.com.cn js.sinajs.cn
即域名之间通过空格隔开。
保存host后,因为有DNS缓存,host不一定立即生效,需要过一段时间之后才可以生效。
你可以通过关闭浏览器然后重新打开,输入更改指向的域名进行验证
继续阅读全文……
今天遇见IE6一个location.href的bug,具体情况是这样的,IE6下,在a标签中,将href写成javascript:;javascript:void(0);,并且给这个标签绑定onclick事件,点击后,执行location.href实现页面跳转,例如下面的代码:
<a href="javascitp:;" onclick="toURL()">点击跳转</a>
或者
<a href="javascitp:void(0);" onclick="toURL()">点击跳转</a>
toURL函数的代码如下所示:
function toURL(){
location.href = "http://js8.in";
}
这样在非IE6浏览器下都可以使用,但是在IE6下就是跳转不了,而且不报错,在location.href之后的代码,例如(alert(1);)也是执行的。
IE6下location.href失效解决的方法
解决IE6中a标签中location.href失效的方式就是a标签中的href不用使用javascript:;或javascript:void(0);。具体原因还不清楚,不过我们可以使用href=”#”来代替。
继续阅读全文……
在javascript开发中我们会经常获取页面中的事件对象,然后来处理这些事件,例如下面的getEvent函数就是获取javascript下的页面事件对象。
function getEvent(event){
return event || window.event;
}
我们使用getEvent的时候可以这样调用。
function foo(event){
var evt = getEvent(event);
alert(evt);
}
并且把foo函数绑定到一个onclick事件上。
但是常用的是foo函数不会有参数,或者第一个参数没有传入,我们可以通过arguments[0]来获取第一个参数。
在IE中event是一个全局变量,即window.event,而在Firefox等浏览器,事件会作为第一个参数传入foo函数,所以getEvent可以改为:
function getEvent(event){
return arguments[0] || window.event;
}
这时在一些版本的浏览器,例如Firefox 中会出现获取不到event对象的问题,其实我们可以看成事件的触发是下面的方式:
function onclick(event) {
foo();
}
这样,第一个函数是onclick,即event会默认作为第一个参数传入,而foo函数没有将event作为参数传入,这样严重限制了getEvent的灵活性,所以我们需要修改下getEvent函数。
继续阅读全文……
有时候我们使用PC浏览器访问手机网站,却自动跳转到PC页面,这时候我们需要修改下浏览器的User-agent,就可以做到以假乱真的方式,修改方法很多,例如通过chrome和firefox的插件(User Agent Switcher),IE下可以通过fiddler代理一下。
收集几个手机浏览器的User-agent,以后使用可以直接拿来复制即可。
Android
Mozilla/5.0 (Linux; U; Android 2.2; en-us; Nexus One Build/FRF91) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1
苹果iPhone
Mozilla/5.0 (iPad; U; CPU OS 3_2_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B500 Safari/531.21.10
诺基亚N97
Mozilla/5.0 (SymbianOS/9.4; Series60/5.0 NokiaN97-1/20.0.019; Profile/MIDP-2.1 Configuration/CLDC-1.1) AppleWebKit/525 (KHTML, like Gecko) BrowserNG/7.1.18124
QQ浏览器
Nokia5700AP23.01/SymbianOS/9.1 Series60/3.0
继续阅读全文……
新浪微博的开放平台提供了jsSDK的方法,但是很多人反映不会使用,这里最关键的一点是不会放跨域文件。
的确,我也承认开放平台的开发文档写的不是很详细,比如对于一些接口是使用REST的,要人云里雾里,而对于REST的介绍却很隐晦,我也是尝试了几次才找到的方法(例如删除微博接口)。
下面简单说说jsSDK的操作。
放置跨域文件
为了实现跨域请求api的接口,我们需要在自己的域名下放置一个xd.html的文件,这个文件可以理解成在你网站做代理的,通过它才可以请求道api.t.sina.com.cn的内容。感兴趣的童靴可以研究下这种跨域的实现方式,国内的人人、腾讯,国外的facebook都是这种跨域方式。
基本原理是通过html5的postMessage和window.name来实现跨域。其实如果进一步研究是完全可以不要这个跨域文件的!相信下一个版本的JSSDK不会出现跨域文件来误导大家。
跨域文件放置要点
- 放置来应用的同域名下,例如你的应用网址是js8.in,则你的xd.html文件就要放在js8.in域名下
- 不一定是根目录下,因为可以通过jsSDK中的
xdpath来传入xd.html路径,默认是根目录,即js8.in/xd.html
继续阅读全文……