`

zk开发中使用jQuery.show与widget.show()的区别

    博客分类:
  • ZK
阅读更多

 

jQuery.show仅仅是设置元素本身的可见性,而widget.show()除了设置dom元素的可见性外,还设置了其依赖项,下面是一个测试代码,

 

 <div>
		<button label="jQuery.show" w:onClick="jq('$txtTest1').show();"></button>
		<textbox id="txtTest1" constraint="no empty:txtTest1 no empty"
			visible="false"></textbox>
	</div>
	<div>
		<button label="widget.show" w:onClick="this.$f('txtTest2').show()"></button>
		<textbox id="txtTest2" constraint="no empty:txtTest2 no empty"
			visible="false"></textbox>
	</div>

在这个测试代码中,id等于txtTest1和txtTest2d的文本框的不允许空值,初始都为隐藏状态,当点击jQuery.show的时候显示txtTest1

,当点击widget.show的时候显示txtTest2,在这里不同是,

当你分别让txtTest1和txtTest2获得焦点然后再失去焦点时,仅仅txtTest2有错误提示

 

 

下面是zk widget.show的源码(zk.jar/web.js.zk/widget.src.js

 

 

show: function () {return this.setVisible(true);},

setVisible: function (visible) {
		if (this._visible != visible) {
			this._visible = visible;

			var p = this.parent, ocvCalled;
			if (this.desktop) {
				var parentVisible = !p || p.isRealVisible(),
					node = this.$n(),
					floating = this._floating;

				if (!parentVisible) {
					if (!floating) this.setDomVisible_(node, visible);
				} else if (visible) {
					var zi;
					if (floating)
						this.setZIndex(zi = _topZIndex(this), {fire:true});

					this.setDomVisible_(node, true);

					
					for (var j = 0, fl = _floatings.length; j < fl; ++j) {
						var w = _floatings[j].widget,
							n = _floatings[j].node;
						if (this == w)
							w.setDomVisible_(n, true, {visibility:1});
						else if (_floatVisibleDependent(this, w)) {
							zi = zi >= 0 ? ++zi: _topZIndex(w);
							w.setFloatZIndex_(n, zi);
							w.setDomVisible_(n, true, {visibility:1});
						}
					}

					if (ocvCalled = p) p.onChildVisible_(this);
						
					
					this.fire('onShow');
					if (!zk.animating())
						zWatch.fireDown('onShow', this);
				} else {
					this.fire('onHide');
					if (!zk.animating())
						zWatch.fireDown('onHide', this);

					for (var j = _floatings.length, bindLevel = this.bindLevel; j--;) {
						var w = _floatings[j].widget;
						if (bindLevel >= w.bindLevel)
							break; 
						if (_floatVisibleDependent(this, w))
							w.setDomVisible_(_floatings[j].node, false, {visibility:1});
					}

					this.setDomVisible_(node, false);
				}
			}
			if (p && !ocvCalled) p.onChildVisible_(this);
				
		}
		return this;
	}

 

 

所以,当显示隐藏区域,并且隐藏区域包含验证的可输入框时,一定要注意这两种的区别

 

 

在客户端编程时,当使用jQuery.show、jQuery.slideDown、jQuery.fadeIn时尽量使用

widget.show、zk('#componentId').slideDown或者zk('#componentId').slideIn代替

 

zk提供的四个特效

 

 

 

 jqzk 

slideDown(Widget wgt, Map opts)  Slides down (show) of the matched DOM element(s).

 

 jqzk

  slideIn(Widget wgt, Map opts)   Slides in (show) of the matched DOM element(s).

 

 jqzk

 slideOut(Widget wgt, Map opts)    Slides out (hide) of the matched DOM element(s).

 

 jqzk  slideUp(Widget wgt, Map opts)     Slides up (hide) of the matched DOM element(s).

 

 

3
0
分享到:
评论

相关推荐

    zk.chm+jquery.chm

    ZK is the most proven Ajax + Mobile framework designed to maximize enterprise operation efficiency and minimize the development cost by its groundbreaking Direct RIA architecture....zk api jquery api

    大数据笔记,包含Hadoop、Spark、Flink、Hive、Kafka、Flume、ZK......

    大数据笔记,包含Hadoop、Spark、Flink、Hive、Kafka、Flume、ZK...... 大数据笔记,包含Hadoop、Spark、Flink、Hive、Kafka、Flume、ZK...... 大数据笔记,包含Hadoop、Spark、Flink、Hive、Kafka、Flume、ZK.......

    zk-bin-7.0.2.zip

    开发人员可以使用ZK提供的组件(如`&lt;chart&gt;`标签)在ZUL(ZK User Interface Language)文件中创建图形,同时结合后端数据处理和传输,以实现动态的图表展示。ZK还支持事件处理和数据绑定,使得前端和后端的数据交互...

    zk-src-6.0.1.zip_zk_zk java_zk-src-6.5.1.1

    标题中的"zk-src-6.0.1.zip_zk_zk_java_zk-src-6.5.1.1"指的是ZK框架的源代码压缩包,包含版本6.0.1和6.5.1.1。ZK是一个基于Java开发的用户界面框架,专门用于构建富Web应用。这里提到了两个版本的源代码,意味着...

    zk中文人员开发手册.rar

    通过这份"ZK 中文人员开发手册3.51",开发者可以学习到如何创建 ZK 应用、理解和使用 ZK 的组件库、设置事件监听器、处理数据绑定以及调试和优化 ZK 应用。这份手册是 ZK 开发者不可或缺的参考资料,有助于快速融入 ...

    ZK开发手册中文版.rar

    《ZK开发手册中文版》是一本专门为开发者提供的详尽指南,主要涵盖了使用AJAX技术构建富客户端Web应用的ZK框架。ZK是一个基于组件的、事件驱动的Java开源框架,它允许开发者以声明式的方式创建交互式用户界面,大大...

    ZK32-1_library_zk_thinkkrz_zk32+9999zk.com_

    3. **开发环境**:使用ZK32 SDK时,开发者通常需要有合适的开发环境,如Visual Studio或其他支持C/C++编程的IDE,以便能够编译和调试利用这些库的代码。 4. **生物识别技术**:ZK32库的核心功能可能涉及多种生物...

    zk-7000-example.rar_zk 7000_zk.sea

    标题中的"zk-7000-example.rar_zk 7000_zk.sea"表明这是一个关于ZK 7000系统的示例压缩包,其中可能包含了相关的源代码和执行文件。"zk.sea"可能是ZK系统的一个特定组件或者加密文件,通常在DOS或早期的Windows系统...

    zk-bin-5.0.0-RC.zip_DEMO_fckez.jar_zk_zk demo_zk-demo-5.0.z

    【标题】"zk-bin-5.0.0-RC.zip_DEMO_fckez.jar_zk_zk demo_zk-demo-5.0.z" 暗示这是一个关于Zookeeper的演示项目,版本为5.0.0-RC。其中包含了一个名为`fckez.jar`的应用程序,以及与Zookeeper(zk)相关的示例代码...

    zk-src-5.0.7.1(zk源码)

    2. **协议与通信**:Zookeeper使用自己的一套通信协议ZAB(ZooKeeper Atomic Broadcast),它是基于Paxos算法的一种简化版本,用于实现集群中的消息广播和一致性。Zookeeper使用Java的Netty框架进行网络通信,高效地...

    Python库 | zk-0.6.10.tar.gz

    在Python中,通过zk库,开发者可以轻松地与ZooKeeper服务器进行交互,执行创建、删除、读取和更新ZNode(ZooKeeper中的数据节点)等操作。 在"zk-0.6.10.tar.gz"压缩包中,通常会包含以下文件和目录: 1. README或...

    zk与jQuery结合制作右下角动态特效提示窗口

    在本案例中,我们探讨的是如何将`ZK`框架与`jQuery`库结合,来创建一个右下角动态特效提示窗口。这个功能通常用于显示通知、消息或者帮助信息,提升用户体验。 首先,`ZK`是一个基于Java的组件模型,它提供了丰富的...

    ZK框架 中文技术文档.rar

    ZK框架 中文技术文档ZK框架 中文技术文档ZK框架 中文技术文档ZK框架 中文技术文档ZK框架 中文技术文档ZK框架 中文技术文档ZK框架 中文技术文档ZK框架 中文技术文档ZK框架 中文技术文档ZK框架 中文技术文档ZK框架 ...

    Apress.ZK.Ajax.without.the.Javascript.Framework.Aug.2007

    6. **ZK与XML/JSON**:尽管名字中有XML,但Ajax实际使用的数据格式并不限于XML。ZK支持XML和JSON,书中的内容可能包括如何在ZK应用中处理这两种数据格式。 7. **性能优化**:书中可能会讨论如何优化ZK应用的性能,...

    zk-bin-6.5.0.zip

    ZK-1241: ZK Client Widget support swipe event for tablet/mobile device ZK-1239: Grid, Listbox, Tree can support to scroll the content by finger on tablet/mobile device ZK-1240: Input element ...

    zk-bin-6.5.3.zip

    客户端可以通过`bin/zkCli.sh`命令行工具与ZK交互,或者在Java项目中导入ZK的jar包,使用ZK的API进行编程。 总的来说,ZK是分布式系统中不可或缺的工具,它的强大功能和简单易用的API使得它在许多大型分布式架构中...

    PyPI 官网下载 | zk_shell-1.2.0.tar.gz

    zk_shell是一个Python命令行工具,允许用户与Zookeeper服务器进行交互,执行诸如创建、删除、检查节点等操作,对于开发和运维人员来说,它是对Zookeeper进行日常管理和调试的强大助手。 在Linux环境下,zk_shell...

    PyPI 官网下载 | zk_shell-1.3.2.tar.gz

    在Linux环境下,`zk_shell`可以作为一个命令行工具,帮助管理员便捷地与Zookeeper集群进行交互,如查看节点状态、创建、更新和删除Zookeeper中的数据节点等。 **使用zk_shell** 在解压`zk_shell-1.3.2.tar.gz`后,...

Global site tag (gtag.js) - Google Analytics