// jquery_扩展// 代码1$.fn.highlight = function (options) { // 合并默认值和用户设定值: var opts = $.extend({}, $.fn.highlight.defaults, options); this.css('backgroundColor', opts.backgroundColor).css('color', opts.color); return this;}// 设定默认值:$.fn.highlight.defaults = { color: '#d85030', backgroundColor: '#fff8de'}// 代码解说:$.fn.'functionName'用于对jquery的方法进行扩展// 代码2// 给$.fn绑定函数,实现插件的代码逻辑;// 插件函数最后要return this;以支持链式调用;// 插件函数要有默认值,绑定在$.fn..defaults上;// 用户在调用时可传入设定值以便覆盖默认值。// 代码解说:编写jquery插件的原则// 代码3$.fn.external = function () { // return返回的each()返回结果,支持链式调用: return this.filter('a').each(function () { // 注意: each()内部的回调函数的this绑定为DOM本身! var a = $(this); var url = a.attr('href'); if (url && (url.indexOf('http://') === 0 || url.indexOf('https://') === 0)) { a.attr('href', '#0') .removeAttr('target') .append(' ') .click(function () { if (confirm('你确定要前往' + url + '?')) { window.open(url); } }); } });}// 代码解说:jquery插件的1个例子