jQuery插件开发的一些问题

david_88888 2015-05-21 04:48:16
最近在学下jQuery的插件开发,以下是在网上找的一段代码:
<script type="text/javascript">
//创建一个插件
(function ($) {
$.fn.tooltip = function (options) {
var settings = {
'location': 'top',
'background-color': 'blue'
};
return this.each(function () {
// 如果存在选项,则合并之
if (options) {
$.extend(settings, options);
}
// 其他代码
});
};
})(jQuery);

$(function () {
$('#btnAdd').click(function () {
$('div').tooltip({ 'background-color': 'red' });
});
});
</script>
<input id="btnAdd" type="button" value="相加" />
<div id="myDiv1" style="width: 300px; height: 100px; border: 1px solid black;">
myDiv1</div>
<div id="myDiv2" style="width: 300px; height: 80px; border: 1px solid red; background-color:Blue;">
myDiv2</div>
<div id="myDiv3" style="width: 300px; height: 120px; border: 1px solid blue;">
myDiv3</div>


为什么设置了div的背景色为红色 $('div').tooltip({ 'background-color': 'red' }); ,还是没有改变呢?代码是在网上找的不知道哪里不正确,请教下兄弟们.......
...全文
183 6 打赏 收藏 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 4 楼 david_88888 的回复:
[quote=引用 3 楼 starfd 的回复:]
options = $.extend({}, setting, options);
$(this).each(function () {  
$(this).css(options);
});
搞定,但是有一点不明白,options = $.extend({}, settings, options);这句代码起什么作用,把这句注释掉了,也不影响程序啊,也能输出正确结果[/quote]
引用 4 楼 david_88888 的回复:
[quote=引用 3 楼 starfd 的回复:]
options = $.extend({}, setting, options);
$(this).each(function () {  
$(this).css(options);
});
搞定,但是有一点不明白,options = $.extend({}, settings, options);这句代码起什么作用,把这句注释掉了,也不影响程序啊,也能输出正确结果[/quote] 不传递options就使用默认的setting配置项,或者缺省某个也使用默认的项
  • 打赏
  • 举报
回复
这句是将settings, options相同项目合并,后面的替换前面的
david_88888 2015-05-21
  • 打赏
  • 举报
回复
引用 3 楼 starfd 的回复:
options = $.extend({}, setting, options);
$(this).each(function () {  
$(this).css(options);
});
搞定,但是有一点不明白,options = $.extend({}, settings, options);这句代码起什么作用,把这句注释掉了,也不影响程序啊,也能输出正确结果
  • 打赏
  • 举报
回复
options = $.extend({}, setting, options);
$(this).each(function () {  
$(this).css(options);
});
david_88888 2015-05-21
  • 打赏
  • 举报
回复
引用 1 楼 starfd 的回复:
你这个只是合并啊,没有将样式应用到$(this)上面啊
兄弟,咋应用啊,我也不知道怎么搞,js咋写
  • 打赏
  • 举报
回复
你这个只是合并啊,没有将样式应用到$(this)上面啊

87,984

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧