jQuery进行组件开发完整实例 - Web前端
作者:98wpeu发布时间:2026-08-13分类:网页前端技术浏览:5
导读:本文实例讲述了JQuery进行组件开发的方法,分享给大家供大家参考,具体如下:前面的《JavaScript组件开发》分析了javascript进行组件开发的技巧,这里分析使用jQ...
本文实例讲述了JQuery进行组件开发的方法,分享给大家供大家参考,具体如下:
前面的《JavaScript组件开发》分析了javascript进行组件开发的技巧,这里分析使用jQuery进行组件开发的方法。
使用jquery进行组件开发和使用纯JavaScript脚本(不使用框架)原理基本类似,特别是公共方法的组织是一样的。
不同点是,jquery使用了插件机制,通过$()直接进行操作对象(DOM元素)绑定,然后对dom元素或html代码进行绑定事件等的操作。
另一个不同点则是把JQuery当做工具来使用,用来创建DOM对象,快速查找指定DOM对象等。
例子测试通过。
初级简单示例,只实现了增加页和选择页功能。
<!DOCtype HTML PUBLIC "-//W3C//DTD xhtml 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="HTTP://www.w3.org/1999/xhtml">
<head>
<title> design JS component with jQuery </title>
<script src="jquery.js" type="text/Javascript"></script>
<link href="tabs.CSS" rel="StyleSheet" type="text/css" />
<style>
.TABsDiv{width: 500px;height: 350px;margin-top: 0px;margin-left: 0px;}
.tabsDiv ul{
width: 500px;height: 20px;
list-style: none;
margin-bottom: 0px;margin: 0px;
padding: 0px;
border-left:solid 1px #ffffff;border-right:solid 1px #ffffff;border-top:solid 1px #ffffff;border-bottom:solid 1px #e0e0e0;
}
.tabsDiv div{
width: 500px;height: 330px;
background-color: #ffffff;
border:solid 1px #e0e0e0;
}
.tabsSeletedLi{
width: 100px;height: 20px;
background-color: white;
float: left;
text-align: center;
border-left:solid 1px #e0e0e0;border-right:solid 1px #e0e0e0;border-top:solid 1px #e0e0e0;border-bottom:solid 1px #ffffff;
}
.tabsSeletedLi a{
width: 100px;
height: 20px;
color:#000000;
text-decoration:none;
}
.tabsUnSeletedLi{
width: 100px;height: 20px;
background-color: #e0e0e0;
float: left;
text-align: center;
border:solid 1px #e0e0e0;
}
.tabsUnSeletedLi a{
width: 100px;height: 20px;
color: #ffffff;
text-decoration:none;
}
</style>
</head>
<body>
<!--
<div style="width:400px;height:100px;border:solid 1px #e0e0e0;">
</div>
-->
<!--tabs示例-->
<div id="mytabs">
<!--选项卡区域-->
<ul>
<li><a href="#tabs1">选项1</a></li>
<li><a href="#tabs2">选项2</a></li>
<li><a href="#tabs3">选项3</a></li>
</ul>
<!--面板区域-->
<div id="tabs1">11111</div>
<div id="tabs2">22222</div>
<div id="tabs3">33333</div>
</div>
<script lang="javascript">
(function ($) {
$.fn.tabs = function (options) {
var me = this;
//使用鼠标移动触发,亦可通过click方式触发页面切换
var defualts = { switchingmode: "mouSEMove" };
//融合配置项
var opts = $.extend({}, defualts, options);
//DOM容器对象,类似MX框架中的$e
var $e = $(this);
//选中的TAB页索引
var selectedIndex = 0;
//TAB列表
var $lis;
//PAGE容器
var aPages = [];
//初始化方法
me.init = function(){
//给容器设置样式类
$e.addClass("tabsDiv");
$lis = $("ul li", $e);
//设置TAB头的选中和非选中样式
$lis.each(function(i, dom){
if(i==0){
$(this).addclass("tabsSeletedLi")
}else{
$(this).addClass("tabsUnSeletedLi");
}
});
//$("ul li:first", $e).addClass("tabsSeletedLi");
//$("ul li", $e).not(":first").addClass("tabsUnSeletedLi");
//$("div", $e).not(":first").hide();
//TAB pages绑定
var $pages = $('div', $e);
$pages.each(function(i, dom){
if(i == 0){
$(this).show();
}else{
$(this).hide();
}
aPages.push($(this));
});
//绑定事件
$lis.bind(opts.switchingMode, function() {
var idx = $lis.index($(this))
me.selectPage(idx);
});
}
/**
* 选中TAB页
*
*/
me.selectPage = function(idx){
if (selectedIndex != idx) {
$lis.eq(selectedIndex).removeClass("tabsSeletedLi").addClass("tabsUnSeletedLi");
$lis.eq(idx).removeClass("tabsUnSeletedLi").addClass("tabsSeletedLi");
aPages[selectedIndex].hide();
aPages[idx].show();
selectedIndex = idx;
};
}
me.showMsg = function(){
alert('WAHAHA!');
}
//自动执行初始化函数
me.init();
//返回函数对象
return this;
};
})(jQuery);
</script>
<script type="text/javascript">
/*
$(function () {
$("#mytabs").tabs;
});
*/
var tab1 = $("#mytabs").tabs();
tab1.showMsg();
</script>
</body>
</html>
最终效果如图所示:

希望本文所述对大家jQuery程序设计有所帮助。
相关推荐
- Jquery zTree 树控件异步加载操作 - Web前端
- jQuery实现的精美平滑二级下拉菜单效果代码 - Web前端
- 酷炫jQuery全屏3D焦点图动画效果 - Web前端
- jQuery插件Validate实现自定义表单验证 - Web前端
- jQuery+canvas实现的球体平抛及颜色动态变换效果 - Web前端
- jQuery+canvas实现简单的球体斜抛及颜色动态变换效果 - Web前端
- jqueryMobile使用示例分享 - Web前端
- 深入学习jQuery Validate表单验证 - Web前端
- jQuery插件Validate实现自定义表单验证 - Web前端
- jQuery+canvas实现的球体平抛及颜色动态变换效果 - Web前端
- 网页前端技术排行
-
- 1[Web前端]用javascript实现默认图片替代未显示的图片 - Web前端
- 2分析Iconfont-阿里巴巴矢量常用图标库 - Web前端
- 3jQuery实例教程:制作网页中可折叠的面板 - Web前端
- 4基于jquery的滚动条滚动固定div(附演示下载) - Web前端
- 5【第六章】Foundation之按钮和下拉功能 - Web前端
- 6jQuery编写widget的一些技巧分享 - Web前端
- 7分享精心挑选的12款优秀jQuery Ajax分页插件和教程 - Web前端
- 8jQuery实现鼠标移到元素上动态提示消息框效果 - Web前端
- 9在Mac/PC上远程调试iPhone/iPad上的网页 - Web前端
- 最近发表
-
- WordPress随机显示特色图片插件:Random Post Thumbnails
- KeePass实现Chrome浏览器自动填充密码方法一
- LNMP一键包nginx 301强制跳转到https教程
- KeePass实现Chrome浏览器自动填充密码方法二
- #建站# 免费的VPS管理软件Xshell8/Xftp8中文版下载
- 使用Xshell 8连接VPS教程_电脑登录vps的方法
- WordPress评论界面添加烟花????效果
- 不同浏览器书签同步方案:坚果云+Floccus_详细使用教程
- iOS端KeePassXC客户端APP:Strongbox Password Safe
- 给WordPress评论中的Gravatar头像图片添加ALT属性


