检查iframe被嵌套的三种方式

采用window对象方式

if (window.top != window.self) {
	alert("window对象-被嵌套一层或多层");	
}
if (window.top != window.parent) {
	alert("window对象-被嵌套两层");
}

采用self对象方式

if (self.top != self.self) {
	alert("self对象-被嵌套一层或多层");
}
if (self.top != self.parent) {
	alert("self对象-被嵌套两层");
}

采用逻辑表达式之短路计算方式

(t = window.top) && t == window.self || alert("短路计算-被嵌套一层或多层");
(t = window.top) && t == window.parent || alert("短路计算-被嵌套两层");

逻辑表达式说明

Continue reading »

用Java生成随机密码的方法

最近各种数据库泄露问题,让我不得不考虑自身密码的强度,下面特意写两种生成密码的方法,已被日后之用;

介绍两种生成随机密码的方式:(在密码字典里面,可以根据实际需要,手工注释不需要生成的字符段)

方式一:

/**
 * 生成随机密码生成方式一
 * 密码字典 -> 随机获取字符
 * @param len 生成密码长度
 * @return
 */
public static String getPassWordOne(int len){
    int i;  //生成的随机数
    int count = 0; //生成的密码的长度
    // 密码字典
    char[] str = {
            'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 
Continue reading »

Foobar2000增加ape支持与转码方法

默认情况下,Foobar2000不对ape,也就是Monkey’s Audio,下面介绍如何为Foobar2000增加对ape音频文件播放支持和对ape音频文件转码方法;

为Foobar2000增加音频文件播放支持
下载:http://www.foobar2000.org/components/view/foo_input_monkey,下载之后安装这个Monkey.fb2k-component插件就好了。之后Foobar2000会提示重启软件,待重启完成后,就可以播放ape音频文件。

为ape音频文件增加转码方法
(1)下载Monkey’s Audio转码器,并安装好,在安装目录下找到“MAC.exe”,这个就是在下面Foobar2000用到的ape转码器;
下载:http://www.monkeysaudio.com/download.html

(2)打开Foobar2000,添加选中要转码成ape格式的音频文件,依次选择 “Convert” “Quick Convert “Add New” 选择”Encoder”下面的”Custom”…

Continue reading »

WAV、FLAC、APE无损音频对比与转换方法

最近新换一部iPhone手机,发现之前在HTC M7自带音乐播放器可以播放FLAC无损音频歌曲,在iPhone里无法听,很抓狂。看到iPhone自带的播放器支持WAV格式。这样也只好被迫学习下WAV与FALC,FLAC与APE这三个无损音频的区别。

先科普下:
什么是WAV
什么是FLAC
什么是APE

看完wikipedia说明,想必有些了解,我在这里简单总结下:
WAV
优点:真正音频无损格式,音频格式未经过特别压缩处理;
缺点:文件体积大。
硬件支持:几乎所有设备均支持;…

Continue reading »

jsonp学习汇总

为什么要使用jsonp?
为了解决在不同域名下,即跨域(参考JavaScript同源策略)获取数据的问题。

这是同域请求

<script src='//libs.baidu.com/jquery/2.0.0/jquery.min.js'></script>
<script type="text/javascript">
    $.ajax({
        url: 'http://127.0.0.1/a.json',
        dataType: "json",
        success: function (data) {
            console.log(data);
        }
    });
</script>

a.json

{
    "name": "sun",
    "age": 10
}

2015-07-11_143704

如果换成跨域?

<script src='//libs.baidu.com/jquery/2.0.0/jquery.min.js'></script>
<script type="text/javascript">
    $.ajax({
        url: 'http://www.sun.cn/a.json',
        dataType: "json",
        success: function (data) {
            console.log(data);
        }
    });
</script>

2015-07-11_144552
提示跨域了,现在就需要jsonp出马。…

Continue reading »

Chrome.v42无法登录招行和中行网银解决方法

2015-04-26_112233
2015-04-26_112533
最近自动更新Chrome到42.0.2311.90m后,发现无法登录招行大众版网银,去Google查了原因发现是从v42开始Chrome自动关闭了NPAPI,从维基百科了解到Google用意,此处只截取部分:

正是由于其跨浏览器的特性,插件库的内容更新及管理一般不是由浏览器而是由各个插件提供商自行维护的。这个特点引发了一些安全性上的疑虑[2],Google Chrome提出了名为Pepper的解决方案[3],但没有得到其它厂商,特别是Mozilla基金会的普遍支持[4]。

2014年11月 Google 宣布 Chrome 将于2015年1月默认屏蔽 NPAPI 插件,9月份会完全移除支持,以鼓励开发者和用户转用 HTML5、Chrome API 或 Google Native Client 等新技术取代 NPAPI。

Continue reading »