• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >jquery > jQuery UI结合Ajax创建可定制的Web界面

jQuery UI结合Ajax创建可定制的Web界面

作者: 字体:[增加 减小] 来源:互联网

通过本文主要向大家介绍了jQuery,UI,Ajax,Web等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

如今,网站比以往更具可定制性,允许用户更改其空间,根据自己的喜好对其进行个性化。个性化的主页或仪表板页面(例如 iGoogle、MyYahoo! 和 MyAOL)日渐普及,大多数 Web 应用程序内甚至也整合了类似的功能。jQuery 库简化了此类复杂 JavaScript 交互的编写,随着 jQuery UI 的引入,这项功能得到了进一步的简化,该库以易于访问的 jQuery 插件的形式提供了常用用户界面类型。
本文介绍了如何利用 Ajax 和 jQuery UI 创建具有各种定制功能的高度可定制的 UI。您将了解如何定制 Web 页面的各个方面,以及如何使用 Ajax 保存首选项。此外,您还将利用拖放操作等技术来排序列表项,以及组织页面元素和 UI 小部件来切换主题和配色方案 —一切都能在单独一个 Web 页面中完成。
创建定制 UI 功能
jQuery UI 是一个 UI 库,其中包含易于编写的交互、动画和效果,还包括可轻松定制主题的小部件。您可以对下载进行定制,选择您希望包含的主题,还可以提取组件,例如 UI 内核(必需)、交互、小部件或效果。要使用 jQuery UI,您还需要最新版本的 jQuery 库。下载部分包含此库,但您也可以在稍后需要更新此库时直接从 jQuery 网站下载最新版本的库。清单 1 展示了如何在 Web 页面中包含 jQuery UI 库和其他必备文件。

清单 1. 创建包含 jQuery UI 代码的 Web 页面 

 <!DOCTYPE html> 
 <html> 
 <head> 
 <meta charset="utf-8"> 
 <title> 
 Creating Customizable Web Interfaces with the jQuery UI and Ajax 
 </title> 
 <link type="text/css" href="css/ui-lightness/jquery-ui-1.8.6.custom.css" 
 rel="stylesheet" /> 
 <link type="text/css" href="css/custom.css" rel="stylesheet" /> 
 <script type="text/javascript" src="js/jquery-1.4.2.min.js"></script> 
 <script type="text/javascript" src="js/jquery-ui-1.8.6.custom.min.js"> 
 </script> 
 </head> 
 <body> 
 </body> 
 </html> 

所包含的第一个 CSS 提供了所选主题 ui-lightness 的代码。 这是默认主题,是在 jQuery UI 下载过程中选定的,但您可以将其更改为所提供的任意主题。如果您已经下载了该库,希望更新正在使用的主题,只需访问 ThemeRoller,从库中下载现有主题即可,也可以利用它来定制您自己的主题。代码中包含的第二个 CSS 提供了定制类,用于设定页面样式,或者覆盖所选主题内使用的属性。最后,代码中包含的 JavaScript 文件是 jQuery 和 jQuery UI 库。
利用 jQuery UI 创建拖放式界面
拖放功能如今越来越常见,可用于排序列表和组织页面元素,许多 Web 应用程序的个性化主页中也使用了这种功能。jQuery UISortable 插件提供了为 Web 页面添加可排序功能的快捷方法,带有许多选项和事件,支持您按照自己希望的方式定制交互。
清单 2 中的示例展示了如何利用 Sortable 插件创建简单的可排序列表。您可以利用此插件让简单的 HTML 列表成为可排序的拖放式列表。首先要为此列表添加一个标识符 —本例中指定 sortable 作为 ID,以便使用 jQuery 轻松找到此列表,并为其添加可排序函数调用。还要为各项添加 ui-state-default 类,以便保持其样式与所选主题一致。

清单 2. 利用 jQuery UI Sortable 插件创建一个简单的可排序列表 
 <!DOCTYPE html> 

 <html> 
 <head> 
  <meta charset="utf-8"> 
  <title> 
 Creating Customizable Web Interfaces with the jQuery UI and Ajax 
 </title> 
  <link type="text/css" href="css/ui-lightness/jquery-ui-1.8.6.custom.css" 
 rel="stylesheet" /> 
 <link type="text/css" href="css/custom.css" rel="stylesheet" /> 
  <script type="text/javascript" src="js/jquery-1.4.2.min.js"></script> 
  <script type="text/javascript" src="js/jquery-ui-1.8.6.custom.min.js"> 
 </script> 
  <script type="text/javascript"> 
    $(function(){ 
      $( "#sortable" ).sortable(); 
    }); 
  </script> 
 </head> 
 <body> 
 
  <h1> 
 Creating Customizable Web Interfaces with the jQuery UI and Ajax 
 </h1> 
  
  <ul id="sortable"> 
    <li id="item1" class="ui-state-default">Item 1</li> 
    <li id="item2" class="ui-state-default">Item 2</li> 
    <li id="item3" class="ui-state-default">Item 3</li> 
    <li id="item4" class="ui-state-default">Item 4</li> 
    <li id="item5" class="ui-state-default">Item 5</li> 
    <li id="item6" class="ui-state-default">Item 6</li> 
    <li id="item7" class="ui-state-default">Item 7</li> 
  </ul> 
  
 </body> 
 </html>

如果需要保存列表项位置,可能必须将详细信息保存到 cookie 或数据库,以便正确呈现页面,从而支持后续的页面查看。如果您使用的是数据库,就可以使用 Ajax 将此数据发送到服务器端脚本,使之能够将值写入数据库,并在随后初始页面加载时返回带有恰当位置的 XML 或 JSON 响应,以将各元素放置在正确的位置。清单 3 中的示例代码展示了如何将位置值发送到服务器端 PHP 脚本。

清单 3. 将位置值发送到服务器端脚本

 $( "#sortable" ).sortable({ 
 stop: function(event, ui) { 
  $("#sortable li").each( 
   function(index){ 
    $.ajax({ 
     type:'POST', 
     url:'filename.php', 
     data:'method=updateposition&id='+$(this).attr('id'))+'&positions='+index, 
     success: function(xml){ 
      // Success 
     } 
    }); 
    } 
   ); 
  } 
 }); 

要保存可排序列表中项的位置,需要利用一个事件来确定排序项的时间。您可以利用多种可排序事件,但这个示例需要 stop 事件,因为只有该事件能够在所有可排序元素完成排序后触发。这一点非常重要,因为您需要在尝试保存位置之前,确保所有元素都处于新位置。触发 stop 事件之后,您要遍历各列表项,以获取其在列表中的索引,随后检索各项的 ID,再利用 Ajax 将这些值发送到一个 PHP 文件,这会将结果保存到数据库,以便在稍后您返回该页面时排序元素。
所用的 Sortable 插件还提供了许多可实现其他定制的选项,例如:
----定义一个占位符类,设定拖动一项时占位符元素的样式
----连接列表,使元素可以拖放到相同 Web 页面中的另一个可排序列表
----在网格中显示和限制可排序元素
----创建多栏界面,支持在各栏间拖动和排序元素
清单 4 中的示例展示了如何创建包含拖放式元素的三栏界面。这三个栏使用 CSS 中三个彼此相邻的 <div> 元素表示。为使 Sortable插件处理分栏结构,只需使用 connectWith 选项,并将其值设置为各分栏元素上使用的 column 类。选项 connectWith 允许使用多栏界面,在各栏间拖动和排序元素。

清单 4. 三栏拖放式界面

 <!DOCTYPE html> 
 <html> 
 <head> 
 <meta charset="utf-8"> 
 <title> 
 Creating Customizable Web Interfaces with the jQuery UI and Ajax 
 </title> 
 <link type="text/css" href="css/ui-lightness/jquery-ui-1.8.6.custom.css"
 rel="stylesheet" /> 
 <link type="text/css" href="css/custom.css" rel="stylesheet" /> 
 <script type="text/javascript" src="js/jquery-1.4.2.min.js"></script> 
 <script type="text/javascript" src="js/jquery-ui-1.8.6.custom.min.js"> 
 </script> 
 <script type="text/javascript"> 
 $(function(){ 
  $( ".column" ).sortable({ 
  connectWith:".column"
  }); 
 
  $( "#sortable" ).sortable(); 
 }); 
 </script> 
 </head> 
 <body> 
 
 <h1> 
 Creating Customizable Web Interfaces with the jQuery UI and Ajax 
 </h1> 

 <ul id="page"> 
 <li class="column"> 
 <div class="portlet ui-widget ui-widget-content ui-helper-clearfix ui-corner-all"> 
 <div class="portlet-header ui-widget-header ui-corner-all">ToDo List</div> 
 <div class="portlet-content"> 
  <ul id="sortable"> 
  <li class="ui-state-default">Item 1</li> 
  <li class="ui-state-default">Item 2</li> 
  <li class="ui-state-default">Item 3</li> 
  <li class="ui-state-default">Item 4</li> 
  <li class="ui-state-default">Item 5</li> 
  <li class="ui-state-def



 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 基于jQuery对象和DOM对象和字符串之间的转化实例
  • jquery+css实现简单的图片轮播效果
  • 使用jQuery实现鼠标点击左右按钮滑动切换
  • jQuery实现上传图片前预览效果功能
  • jQuery初级教程之网站品牌列表效果
  • 基于jquery实现多选下拉列表
  • jQuery接受后台传递的List的实例详解
  • 详解jquery选择器的原理
  • jQuery上传插件webupload使用方法
  • 关于jquery form表单序列化的注意事项详解

相关文章

  • jQuery+ajax实现鼠标单击修改内容的思路
  • jQGrid Table操作列中点击【操作】按钮弹出按钮层的实现代码
  • jquery+css3打造一款ajax分页插件(自写)
  • jQuery查找和过滤_动力节点节点Java学院整理
  • 关于input全选反选恶心的异常情况
  • 基于Jquery的$.cookie()实现跨越页面tabs导航实现代码
  • jQuery CSS()方法改变现有的CSS样式表
  • 基于JQuery实现的类似购物商城的购物车
  • jquery中map函数遍历数组用法实例
  • jQuery.Validate 使用笔记(jQuery Validation范例 )

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • Jquery + Ajax调用webService实例代码(asp.net)
    • jQuery数组处理方法汇总
    • jQuery学习笔记(4)--Jquery中获取table中某列值的具体思路
    • jQuery插件HighCharts绘制2D半圆环图效果示例【附demo源码下载】
    • jQuery回调函数的定义及用法实例
    • jquery div拖动效果示例代码
    • jQuery中slidedown与slideup方法用法示例
    • jQuery中的select操作详解
    • Jquery仿淘宝京东多条件筛选可自行结合ajax加载示例
    • 基于jQuery实现的水平和垂直居中的div窗口

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有