关于自定义事件

一天要饭生活又开始啦 2013-05-27 05:30:10
<ul id="tabs">
<li data-tab="users">Users</li>
<li data-tab="groups">Groups</li>
</ul>
<div id="tabsContent">
<div data-tab="users"> ... </div>
<div data-tab="groups"> ... </div>
</div>
jQuery.fn.tabs = function (control) {
var element = $(this);
control = $(control);
element.delegate("li", "click", function () {
var tabName = $(this).attr("data-tab");
element.trigger("change.tabs", tabName);
});
element.bind("change.tabs", function (e, tabName) {
element.find("li").removeClass("active");
element.find(">[data-tab='" + tabName + "']").addClass("active");
});
element.bind("change.tabs", function (e, tabName) {
control.find(">[data-tab]").removeClass("active");
control.find(">[data-tab='" + tabName + "']").addClass("active");
});
var firstName = element.find("li:first").attr("data-tab");
element.trigger("change.tabs", firstName);
return this;
};
$("ul#tabs").tabs("#tabContent");
...全文
126 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style type='text/css'>
body { margin:0; padding:0; }
.clearfix:after { content:' '; display:block; clear:both; height:0; font-size:0; visibility:hidden; }
.clearfix { *zoom:1; }
ul,li { margin:0; padding:0; }
ul { list-style:none; }
ul li { float:left; width:50px; }
#tabs li.active { background-color:red; }
#tabsContent div { display:none; }
#tabsContent div.active { display:block; }
</style>
<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js'></script>
<script type='text/javascript'>
function tabs() {
	$('#tabs').delegate('li', 'click', function() {
		$('li').removeClass('active');
		$(this).addClass('active');
		$('#tabsContent').find('div').removeClass('active');
		$('#tabsContent').find('div').eq($(this).index()).addClass('active');
	});
}

$(function() {
    tabs();
});
</script>
</head>

<body>
<ul id="tabs" class='clearfix'>
	<li class='active'>Users</li>
	<li>Groups</li>
	<li>Groups</li>
</ul>
<div id="tabsContent">
	<div class='active'> ... </div>
	<div> ...... </div>
	<div> ......... </div>
</div>
</body>
</html>
  • 打赏
  • 举报
回复
引用 1 楼 KK3K2005 的回复:
书上说自定义事件好扩展,可是我没看出啊,能给解释下吗?
  • 打赏
  • 举报
回复
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style type='text/css'>
body { margin:0; padding:0; }
.clearfix:after { content:' '; display:block; clear:both; height:0; font-size:0; visibility:hidden; }
.clearfix { *zoom:1; }
ul,li { margin:0; padding:0; }
ul { list-style:none; }
ul li { float:left; width:50px; }
#tabs li.active { background-color:red; }
#tabsContent div { display:none; }
#tabsContent div.active { display:block; }
</style>
<script type='text/javascript' src='http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js'></script>
<script type='text/javascript'>
jQuery.fn.tabs = function (control) {
	var element = $(this);
	control = $(control);
	
	element.delegate("li", "click", function () {
		var tabName = $(this).attr("data-tab");
		
		element.trigger("change.tabs", tabName);
	});
	
	element.bind("change.tabs", function (e, tabName) {
		element.find("li").removeClass("active");
		element.find(">[data-tab='" + tabName + "']").addClass("active");
	});
	
	element.bind("change.tabs", function (e, tabName) {
		control.find(">[data-tab]").removeClass("active");
		control.find(">[data-tab='" + tabName + "']").addClass("active");
	});
	
	var firstName = element.find("li:first").attr("data-tab");
	
	element.trigger("change.tabs", firstName);
	
	return this;
};


$(window).bind("hashchange", function(){
var tabName = window.location.hash.slice(1);
$("#tabs").trigger("change.tabs", tabName);
});

$(function() {
	$("#tabs").bind("change.tabs", function(e, tabName){
	window.location.hash = tabName;
	});
	$("ul#tabs").tabs("#tabsContent");
});
</script>
</head>

<body>
<ul id="tabs" class='clearfix'>
	<li data-tab="users">Users</li>
	<li data-tab="groups">Groups</li>
</ul>
<div id="tabsContent">
	<div data-tab="users"> ... </div>
	<div data-tab="groups"> ...... </div>
</div>
</body>
</html>
KK3K2005 2013-05-27
  • 打赏
  • 举报
回复
内容概要:本文针对无刷直流电机驱动的电子机械制动(EMB)执行器,建立了考虑Stribeck摩擦特性的非线性耦合动力学模型,并在Simulink环境中完成了系统级仿真分析。研究综合集成了电机动力学、齿轮传动机构与制动执行机构的动力学特性,构建了高保真的机电一体化系统模型。重点引入Stribeck摩擦模型以精确描述低速工况下执行器内部存在的静摩擦、粘滞摩擦与库仑摩擦之间的过渡行为,有效提升了系统在启停、反向运动等瞬态过程中的动态响应仿真精度。通过多工况仿真验证了模型的有效性,能够准确反映摩擦引起的爬行、滞后与定位误差等非线性现象,为EMB系统的高性能控制算法设计(如摩擦补偿、滑模控制)与结构优化提供了高可信度的仿真平台。; 适合人群:从事汽车电子制动系统、电机驱动控制、机电系统建模与仿真研究的研究生、科研人员及工程技术人员,需具备扎实的机械动力学、自动控制理论基础和MATLAB/Simulink仿真能力。; 使用场景及目标:①用于高精度电子机械制动系统的设计验证与性能预测;②为消除摩擦非线性影响的先进控制策略(如自适应控制、智能控制)提供精确的被控对象模型;③深入探究Stribeck摩擦等非线性因素对系统动态性能(如响应延迟、稳态误差)的作用机理; 阅读建议:读者应结合提供的Simulink模型文件,深入剖析Stribeck摩擦模块的数学实现与参数辨识方法,建议通过改变输入指令(如阶跃、正弦)和负载条件进行对比仿真,以直观理解非线性摩擦对系统动态特性的影响。

87,988

社区成员

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

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