使用 PHP 和 DHTML 设计 Web 2.0 应用程序,第 1 部分: 使用这些技术打造有特色的应用
来源:百度文库 编辑:神马文学网 时间:2024/04/26 06:56:04
文档选项
将此页作为电子邮件发送
最新推荐
Java 应用开发源动力 - 下载免费软件,快速启动开发
级别: 中级
Jack Herrington (jack_d_herrington@codegeneration.net), 高级软件工程师, "Code Generation Network"
2006 年 9 月 07 日
2006 年最时髦的词莫过于 Web 2.0。Web 2.0 究竟意味着什么,这是一个热门的争论话题,但它似乎与一种很酷的动态 Web 应用程序有关。那些 Web 应用程序 —— 通常以 PHP 开发 —— 使用动态 HTML(DHTML)创建页面,移动及更改此页面时无需返回服务器进行更新。Jack Herrington 在 “使用 PHP 和 DHTML 设计 Web 2.0 应用程序” 系列文章中教您开始使用这项技术。
DHTML 是包含 JavaScript 代码的 HTML,这些代码可更改浏览器中的页面布局,而无需返回服务器。在您编写 HTML 页面时,您实际上是在编写一个对象树。所有标记 —— 小小的
Crank Shaft | 22 |
Driver | 42 |
Football 2006 | 72 |
Soccer 2006 | 99 |
Xevious | 32 |
Crank Shaft | 22 |
Xevious | 32 |
Driver | 42 |
Football 2006 | 72 |
Soccer 2006 | 99 |
两个列表分别位于两个
还有其他一些有趣的东西。首先,您使用 className 属性动态地更改了链接的 CSS 类。这也就是所选按钮从白色变为黑色的原因。
其次,观察 names 和 score 的 CSS。两个
这种 DHTML 不但复杂度合理、有趣,而且几乎与所有现代浏览器兼容。
回页首
在 PHP 中开发 DHTML 的另外一种工具就是输出缓存区 的使用。输出缓存区存储页面中的文本、选项卡和重复素材,并将其作为字符串返回,供以后使用。为实现选项卡,将使用输出缓存区,在把选项卡内容呈现到页面中之前将其作为字符串存储(参见清单 8)。
$title, ‘html‘ => "" ); } function end_tab() { global $tabs, $current_tab; $tabs[ $current_tab ][ ‘html‘ ] = ob_get_contents(); ob_end_clean(); } function get_tab_ids() { global $tabs; $ids = array(); foreach( $tabs as $tabid => $tab ) { $ids []= "‘".$tabid."‘"; } return $ids; } function get_first_tab() { $tabs = get_tab_ids(); return $tabs[0]; } function place_tab_buttons() { global $tabs; foreach( $tabs as $tabid => $tab ) { ?> $tab ) { ?>
Crank Shaft | 22 |
Driver | 42 |
Football 2006 | 72 |
Soccer 2006 | 99 |
Xevious | 32 |
Crank Shaft | 22 |
Xevious | 32 |
Driver | 42 |
Football 2006 | 72 |
Soccer 2006 | 99 |
PHP 代码首先定义了两个变量:tabs 和 current_tab。tabs 数组保存各选项卡的 id、title 和 html 值。current_tab 指向 start_tab 和 end_tab 调用间创建的选项卡。start_tab 函数接受两个参数:选项卡的 id 值和 title 值。它随后会启动输出缓存。
end_tab 函数终止输出缓存,并将作为结果的 HTML 存储在 tabs 数组的 current_tab 的 html 值中。
再往下看,可以看到 start_tab 和 end_tab 调用中包含要在选项卡中呈现的选项卡内容。
将选项卡呈现在页面上的重要函数就是 place_tab_buttons 和 place_tab_content。place_tab_buttons 函数创建有着选项卡名称的锚定标记,单击锚定标记时,将切换选项卡。place_tab_content 函数创建具有输出缓存区存储的各选项卡内容的
get_tab_ids 和 get_first_tab 是创建 JavaScript 的辅助函数。它们分别返回选项卡 ID 的完整列表和第一个选项卡的 ID。
回页首
“使用 PHP 和 DHTML 设计 Web 2.0 应用程序” 系列的下一篇文章将介绍通过 JavaScript 生成动态图片的内容。下篇文章将教您如何动态创建新的 HTML 元素,并在 PHP 应用程序所显示的页面中定位这些元素。
回页首
学习
您可以参阅本文在 developerWorks 全球站点上的英文原文 。
PHP.net 是学习 PHP 所有内容的入门网站。
Ajaxian blog 是一个探索客户端编码技巧的好地方。
Ajax Freaks 是另外一个不错的客户端站点。
WebReference.com 有许多关于浏览器兼容性问题的出色文章和参考资料。
O‘Reilly 的Dynamic HTML: The Definitive Reference 是关于 Dynamic HTML 的最佳图书。
要查看本文讨论的选项卡示例,请访问Metacritic.com。
阅读 developerWorks 的文章 “A cross-browser DHTML table”,学习如何使用 DHTML 和 JavaScript 创建跨浏览器的表格,并且实现 Java 表组件的大多数功能。
阅读 “使用 AJAX 构建应用程序:学习用 AJAX 构建支持实时验证的 Web 应用程序”,在作者的指导下构造一个示例图书订购应用程序,从而掌握如何构建基于 AJAX 的 Web 应用程序,并在不必刷新页面的情况下实现实时校验。
访问 IBM developerWorks 的PHP 项目资源,了解 PHP 的更多信息。
随时关注developerWorks 技术活动和网络广播。
访问 developerWorks开放源码专区,获得广泛的 how-to 信息、工具和项目更新,帮助您使用开放源码技术进行开发,并将其与 IBM 的产品配合使用。
获得产品和技术
使用IBM 试用软件 革新您的下一个开放源码开发项目,可通过下载获得,也可通过 DVD 获得。
讨论
通过参与developerWorks blogs 加入 developerWorks 社区。
回页首
Jack D. Herrington 是一名高级软件工程师,有着二十余年的经验。他撰写了三本图书:Code Generation in Action、Podcasting Hacks 和即将出版的 PHP Hacks。他的作品还包括三十多篇文章。
回页首