Ckeditor 4.5.4,在编辑的时候,使用源码编辑,当保存内容包含Javascript、Style标签的时候,数据库中有Javascript、Style标签,输入到页面也可以执行,但是我再次编辑的时候就不见了,应该是Ckeditor把它们过滤掉了。。。
1、JS中的splice方法
splice(index, len, [item]) //注意:该方法会改变原始数组。
splice有3个参数,它也可以用来替换/删除/添加数组内某一个或者几个值。
index:数组开始下标;
len:替换/删除的长度;
item:替换的值,删除操作的话 item为空;
项目中,用到百度ueditor编辑器,发现,上传大一点的图片,图片会失真,刚开始还以为是PHP端做了图片压缩,仔细看配置说明,发现是编辑器自带有个自动压缩图片的功能,可恶的是,压缩后的图片失真了!
决定去掉这个压缩功能,如果非得要压缩,那就交给服务端PHP来处理吧!
找到配置文件:ueditor/php/config.json
把 imageCompressEnable 设置为 false 即可!
// 应用举例
$(function () {
$('#Article .content img').LoadImage(true, 660, 660, 'http://127.0.0.12:8088/statics/images/s_nopic.gif');
})
当图片加载失败的时候,我们可以利用onerror事件赋予它默认图片,但是问题来了,假如默认图片又不存在呢,即加载失败,这个时候就会陷入死循环。
为了避免死循环的情况,我们可以在执行完onerror事件后,置于onerror=null 来清除onerror事件,参考代码如下:
<img src="http://127.0.0.1:8088/images/avatar_50x50.gif" onerror="this.onerror=null;this.src='http://127.0.0.1:8088/images/noavatar_small.gif'" />
如同 in 运算符一样,使用 for in 循环遍历对象属性时,也将往上遍历整个原型链。
// Poisoning Object.prototype
Object.prototype.bar = 1;
var foo = { moo: 2 };
for(var i in foo) {
console.log(i); // prints both bar and moo
}
判断一个属性是定义在对象本身而不是继承自原型链,我们需要使用从 Object.prototype 继承而来的 hasOwnProperty 方法。
hasOwnProperty 方法是 JavaScript 中唯一一个处理对象属性而不会往上遍历原型链的。
// Poisoning Object.prototype
Object.prototype.bar = 1;
var foo = { goo: undefined };
foo.bar; // 1
'bar' in foo; // true
foo.hasOwnProperty('bar'); // false
foo.hasOwnProperty('goo'); // true
JavaScript 并没有类继承模型,而是使用原型对象 prototype 进行原型式继承。
尽管人们经常将此看做是 JavaScript 的一个缺点,然而事实上,原型式继承比传统的类继承模型要更加强大。
JavaScript 中的一切都可以视为对象,除了两个特例:null 和 undefined。
false.toString(); // 'false'
[1, 2, 3].toString(); // '1,2,3'
function Foo(){}
Foo.bar = 1;
Foo.bar; // 1