`
idream
  • 浏览: 44503 次
  • 性别: Icon_minigender_1
  • 来自: 内蒙古
社区版块
存档分类
最新评论

jQuery布局(原创)

阅读更多

是这样的,开始准备做一个美观点的后台页面,考虑使用EXTJs。可考虑到协议的问题,最终还是放弃了,继续使用jQuery吧。传统的后台页面布局是表格套表格,加上freamset已经ifream,当然也可以做到美观,可那是一个乱啊。下面介绍一个jQuery的插件,目前除了官方的英文文档,还没有发现可用的中文说明。用我极差的文笔在这里发表一下,希望大家不要介意。只是把自己的收获与大家分享一下。废话不多说,上正题!

 

首先,这个插件叫做:jQuery UI.Layout Plug-in  官方站点:http://layout.jquery-dev.net/

 

必须的文件是,jquery.js,jquery-ui.js,还有就是这个插件的js。但在研究的过程中发现了一个问题,在官网下载的js是有问题的,甚至性能上都有问题。要下载官网示例中使用的js,切记。。地址:http://layout.jquery-dev.net/lib/js/jquery.layout-latest.js

 

我还是硬着头皮把官方的文档看完了,可怜我那点英语水平啊。

 

把必要的js引入后,其实就可以正常运行了,参见官方最简单的那个示例,如下:

<script src="js/jquery-1.4.2.min.js" type="text/javascript"></script>
<script src="js/jquery-ui-1.8.4.custom.min.js" type="text/javascript"></script>
<script src="js/jquery.layout-latest.js" type="text/javascript"></script>
<SCRIPT type="text/javascript">
$(document).ready(function () {
	$('body').layout({ applyDefaultStyles: true });
});
</SCRIPT>

<DIV class="ui-layout-center">Center</DIV>
<DIV class="ui-layout-north">North</DIV>
<DIV class="ui-layout-south">South</DIV>
<DIV class="ui-layout-east">East</DIV>
<DIV class="ui-layout-west">West</DIV>

 

下面解释一下属性:

$(function(){
		var myLayout =$("body").layout(
							{ 	
								applyDefaultStyles: true,//应用默认样式
								scrollToBookmarkOnLoad:false,//页加载时滚动到标签
								showOverflowOnHover:false,//鼠标移过显示被隐藏的,只在禁用滚动条时用。
								north__closable:false,//可以被关闭
								north__resizable:false,//可以改变大小
								north__size:50,//pane的大小
								spacing_open:8,//边框的间隙
								spacing_closed:60,//关闭时边框的间隙
								resizerTip:"可调整大小",//鼠标移到边框时,提示语
								//resizerCursor:"resize-p" 鼠标移上的指针样式
								resizerDragOpacity:0.9,//调整大小边框移动时的透明度
								maskIframesOnResize:"#ifa",//在改变大小的时候,标记iframe(未通过测试)
								sliderTip:"显示/隐藏侧边栏",//在某个Pane隐藏后,当鼠标移到边框上显示的提示语。
								sliderCursor:"pointer",//在某个Pane隐藏后,当鼠标移到边框上时的指针样式。
								slideTrigger_open:"dblclick",//在某个Pane隐藏后,鼠标触发其显示的事件。(click", "dblclick", "mouseover)
								slideTrigger_close:"click",//在某个Pane隐藏后,鼠标触发其关闭的事件。("click", "mouseout")
								togglerTip_open:"关闭",//pane打开时,当鼠标移动到边框上按钮上,显示的提示语
								togglerTip_closed:"打开",//pane关闭时,当鼠标移动到边框上按钮上,显示的提示语
								togglerLength_open:100,//pane打开时,边框按钮的长度
								togglerLength_closed:200,//pane关闭时,边框按钮的长度
								hideTogglerOnSlide:true,//在边框上隐藏打开/关闭按钮(测试未通过)
								togglerAlign_open:"left",//pane打开时,边框按钮显示的位置
								togglerAlign_closed:"right",//pane关闭时,边框按钮显示的位置
								togglerContent_open:"<div style='background:red'>AAA</div>",//pane打开时,边框按钮中需要显示的内容可以是符号"<"等。需要加入默认css样式.ui-layout-toggler .content 
								togglerContent_closed:"<img/>",//pane关闭时,同上。
								enableCursorHotkey:true,//启用快捷键CTRL或shift + 上下左右。
								customHotkeyModifier:"shift",//自定义快捷键控制键("CTRL", "SHIFT", "CTRL+SHIFT"),不能使用alt
								south__customHotkey:"shift+0",//自定义快捷键(测试未通过)
								fxName:"drop",//打开关闭的动画效果
								fxSpeed:"slow",//动画速度
								//fxSettings: { duration: 500, easing: "bounceInOut" }//自定义动画设置(未通过测试)
								//initClosed:true,//初始时,所有pane关闭
								//initHidden:true //初始时,所有pane隐藏
								onresize :ons,//调整大小时调用的函数
								onshow_start:start,
								onshow_end:end
								/*
								其他回调函数
								
								显示时调用
								onshow = ""
								onshow_start = "" 
								onshow_end = "" 
								隐藏时调用
								onhide = "" 
								onhide_start = "" 
								onhide_end = "" 
								打开时调用
								onopen = "" 
								onopen_start = "" 
								onopen_end = "" 
								关闭时调用
								onclose = "" 
								onclose_start = "" 
								onclose_end = "" 
								改变大小时调用
								onresize = "" 
								onresize_start = "" 
								onresize_end = "" 
								*/
							}
		);
		

	});

 

有些遗漏的还得参见官网。

 

如果不应用默认的样式呢?也就是applyDefaultStyles: false(默认)的时候。就需要一个css了,献上我测试后的css,如下:

body {
	font-family: 宋体,Geneva, Arial, Helvetica, sans-serif;
	font-size:   80%;
	*font-size:  80%;
}

/*
三种必备样式为:
paneClass:    "ui-layout-pane" 窗格样式
resizerClass: "ui-layout-resizer" 拉动条样式
togglerClass: "ui-layout-toggler" 拉动条上按钮样式
*/

/*
 所有窗格应用的样式,也是必备样式
ui-layout-pane 
ui-layout-pane-[PANE-NAME](东南西北中,如:ui-layout-pane-west。这个样式放入基本样式下方,可覆盖原样式。 ) 
ui-layout-pane-[PANE-STATE] (open、closed 如:ui-layout-pane-open。窗格打开时的样式)
ui-layout-pane-[PANE-NAME]-[PANE-STATE] (如:ui-layout-pane-west-closed。指定东南西北中一个窗格在某状态下的样式。)
*/
.ui-layout-pane { 
	background: #dfe8f6;
	border:		0px solid #8db2e3;
	padding:	10px; 
	overflow:	auto;
}
	/*非必备样式,描述窗格中的内容*/
	.ui-layout-content {
		padding:	10px;
		position:	relative; 
		overflow:	auto;
	}

/*
 *	所有拉动条的样式
 */
.ui-layout-resizer	{ 
	background:		#dfe8f6;
	border:			1px solid #BBB;
	border-width:	0;
	}
	/*
	 * 拉动条拉动时,保持不动的拉动条样式,不明白修改背景测试。
	 */
	.ui-layout-resizer-drag {
	}
	
	/*鼠标移动到拉动条时的样式*/
	.ui-layout-resizer-hover{
	}
	/* 
     *拖动拉动条时,拉动条的样式,据说是设置“打开悬停”和“拖动”为同一样式。
	 */
	/*.ui-layout-resizer-open-hover ,	*/
	.ui-layout-resizer-dragging {	
		background:#aaaaaa;
	}

	/*拖动拉动条时,到最大或最小边缘时的样式*/
	.ui-layout-resizer-dragging-limit {
		background: #E1A4A4; /* red */
	}

	/*拉动条关闭时,的样式。*/
	.ui-layout-resizer-closed-hover	{ 
		background: #FFCC00;
	}
	
	/*窗格关闭后,点击拉动条(非拉动条按钮),窗格滑动时拉动条的样式*/
	.ui-layout-resizer-sliding {	
		opacity: .10; 
		filter:  alpha(opacity=10);
		}
		/*窗格关闭后,点击拉动条(非拉动条按钮),窗格滑动时,鼠标悬停在拉动条上的样式*/
		.ui-layout-resizer-sliding-hover {
			opacity: 1.00; 
			filter:  alpha(opacity=100);
		}



	

/*
 *	拖动杆上的按钮
 */
.ui-layout-toggler {
	border: 1px solid #CCCCCC; 
	background-color: #bcd2ef;
	opacity: .60;
	filter:  alpha(opacity=60);
	}
	
/*
	鼠标悬停在拉动条时的样式,已被.ui-layout-resizer-open-hover和.ui-layout-resizer-closed-hover覆盖了。
	.ui-layout-resizer-hover
 */
	
	
	/*鼠标悬停在拖动条上按钮的样式*/
	.ui-layout-toggler-hover {
		background-color: #0099FF;
		opacity: 1.00;
		filter:  alpha(opacity=100);
	}
	
	/*窗格关闭后,半打开状态的拉动条是隐藏的*/
	.ui-layout-resizer-sliding  ui-layout-toggler {
		display: none;
	}


/*貌似是按钮上的文字内容*/
	.ui-layout-toggler .content {
	background:#FFFF00;
		color: #66FFCC;
		font-size:		12px;
		font-weight:	bold;
		width:			100%;
		padding-bottom:	0.35ex; /* to 'vertically center' text inside text-span */
	}

 

极大部分已经测试过了,参考官方示例中给出的css,地址:http://layout.jquery-dev.net/lib/css/layout-default-latest.css

 

 

时间原因,不能阐述太多了,本人英文水平很差,如有错误,请大家及时指正。




 
 

  • 描述: 图片
  • 大小: 47.2 KB
2
2
分享到:
评论
3 楼 fishinsky 2011-01-31  
layout的网站上只能下到1.2的版本。。。
2 楼 doabit 2010-10-01  
一直没找到好的jquery界面。。因为这个我都考虑换其它的了,jq layout 1.3 beta中,,不知道怎么样
1 楼 hyj1254 2010-09-25  
正在用,但有个缺点,每次window的resize被触发时,它都不能立即自适应,有一定的延迟。这就导致2个问题:延迟过程中页面会出现明显的深灰色的过渡区,影响体验;延迟的存在与其他jQuery插件不兼容,如tabs,导致该插件的resize事件失效。

相关推荐

    Jquery 拼图相册,原创相册

    2. **布局与交互**:使用 jQuery 对这些图片切片进行布局,可以是网格状、随机散列或其他创新布局。用户通过鼠标拖动或触摸滑动来重新排列这些切片,实现拼图效果。 3. **动画效果**:jQuery 的动画函数如 `animate...

    Jquery拖动窗格保存布局Cookie源码

    主要是使用jquery-1.7.1 和最新的jQuery UI - v1.8.20 进行开发而成。对于要求高的朋友们应该是很好的扩展基础! 功能描述:打开index.html页面就可以看到效果啦! 注意事项: 本实例下载者可以随意的二次开发,这...

    原创日历Jquery插件

    【原创日历Jquery插件】是一款专门为网页开发者设计的交互式日历组件,它基于JavaScript库Jquery构建,能够方便地集成到网页项目中,为用户提供直观的日历展示和操作功能。这款插件是作者的原创作品,旨在促进开发者...

    jquery手册jquery的学习jquery的学习

    jQuery插件丰富了其功能,如Bootstrap的jQuery插件用于创建响应式布局,jQuery UI提供了一套完整的用户界面组件。开发者也可以自定义插件,以满足特定需求。 八、LAMP兄弟连资源 在提供的压缩包中,"LAMP兄弟连 ...

    Jquery EasyUI DeskTop原创1.1

    **jQuery EasyUI Desktop 1.1 - 创建现代感十足的Web桌面** jQuery EasyUI Desktop 是一个基于jQuery和EasyUI框架的Web应用程序界面组件,它旨在为用户带来类似Windows 8的桌面体验。这个组件允许开发者构建具有...

    使用jQuery实现仿2010京东商城商品分类导航菜单

    在本文中,我们将深入探讨如何使用jQuery来实现一个仿2010年京东商城的商品分类导航菜单。这个功能是电商网站的重要组成部分,它为用户提供了一种直观、方便的方式来浏览和筛选各种商品类别。我们将讨论jQuery的基本...

    jquery实现图片的左右滚动

    总的来说,这个项目展示了如何使用jQuery实现一个基础的图片左右滚动功能,通过HTML布局、CSS样式和jQuery动画相结合,为网页增添动态元素。这个简单的实例可以作为学习jQuery动画和DOM操作的起点,为进一步的前端...

    原创左右两列框架锚点滚动Jquery插件

    【标题】"原创左右两列框架锚点滚动Jquery插件"所涉及的知识点主要集中在网页设计和前端开发领域,特别是使用Jquery实现的一种高效、便捷的用户界面交互设计。这种设计模式通常被称为单页应用(Single Page ...

    原创 jquery图片轮换效果

    综上所述,"原创 jQuery 图片轮换效果"是结合HTML、CSS和jQuery实现的一种网页动态效果,通过合理的布局和编程技巧,为用户提供了一种吸引眼球且易于交互的图片展示方式。这种技术不仅适用于首页广告,还可以广泛...

    完美的JQUERY TREE,原创

    这篇博客将深入探讨如何创建并使用这个原创的JQuery Tree,以及它的核心功能和优势。 首先,JQuery Tree的亮点在于其灵活性和易用性。开发者可以方便地通过JSON数据格式来定义树节点,然后利用jQuery的API进行操作...

    原创漂浮广告Jquery插件

    【原创漂浮广告Jquery插件】是一种基于JavaScript库Jquery设计的插件,主要用于在网页上实现广告的漂浮展示效果。这种插件在网页设计中被广泛应用,旨在提高广告的可见性和用户互动性,同时保持页面内容的可读性。 ...

    原创jQuery焦点图插件demo(含插件)

    在这个实例中,我们有一个名为"jQuery QuinnSlideshow"的原创插件,作者提供了完整的代码示例和相关资源。 首先,jQuery是一个广泛使用的JavaScript库,它简化了HTML文档遍历、事件处理、动画以及Ajax交互等任务。...

    (jQuery+div)实现后台管理界面

    这些文件共同协作,构建出一个既简洁又大方的后台管理界面,体现了作者IT木瓜的原创设计和持续改进的努力。 总的来说,这个项目充分利用了jQuery的便利性和div的灵活性,以实现一个高效、可维护的后台管理界面。...

    【原创】jquery甘特图插件

    本篇文章将详细解析一个基于jQuery的原创甘特图插件,该插件具有丰富的功能,包括已用时间的阴影显示、实际与计划时间的对比以及审核节点的呈现,适用于需要直观展示项目进度的场景。 首先,让我们了解一下jQuery。...

    原创jquery“百家姓”舒尔特方格

    在"原创jquery“百家姓”舒尔特方格"这个项目中,我们可以预期以下关键知识点: 1. **HTML结构**:首先,我们需要创建一个包含网格的HTML页面。每个单元格可以是一个`&lt;div&gt;`元素,它们的ID或者类名可以用来标识数字...

    jquery-starterkit.zip_jquery starterkit_jquery-starterkit

    "css"目录下可能包含了样式表文件,这些文件用于控制网页的布局和视觉效果。在这里,我们可以学习CSS的规则,如何使用选择器、类和ID来定位元素,以及如何应用样式以达到预期的设计。 最后,"lib"目录可能包含了...

    jQuery拖动合成海报图片 国庆节活动 (原创).zip

    在本项目中,"jQuery拖动合成海报图片 国庆节活动 (原创).zip" 提供了一个使用jQuery实现的国庆节活动应用。这个应用的核心功能是让用户能够通过拖动图片来合成一张国庆节主题的海报。以下是这个项目涉及到的一些...

    JS/JQuery-第7章上机练习.zip

    JQuery可以辅助实现这一目标,如利用`resize()`事件和媒体查询进行布局调整。 8. **模块化与组织结构**:良好的代码组织能提高代码可读性和维护性。JQuery应用中可以使用模块化技术(如AMD/CMD)来管理代码,确保...

    分享一款原创Jquery实现瀑布流特效

    此Jquery特效是一款非常流行和实用的瀑布流布局,核心代码只有几十行,是我见过代码量最少的瀑布流布局,非常适合网友们学习哦,希望大家好好看一下这个Jquery特效的原代码,里面的每个功能注释写得非常详细。...

    Jquery+css3实现弹出层注册特效

    `视频教程大全.url`、`电子书大全.url`、`原创Jquery插件大全.url`这些URL文件可能指向与jQuery、CSS3相关的学习资源,供开发者进一步研究和提升技能。 总的来说,"Jquery+css3实现弹出层注册特效"是一个结合了前端...

Global site tag (gtag.js) - Google Analytics