Client Attribute"

From Documentation
Line 32: Line 32:
 
</source>
 
</source>
  
== Tablet Device ==
+
'''data-swipeable'''
  
 
   ZK EE only
 
   ZK EE only
Line 63: Line 63:
 
</source>
 
</source>
  
 +
'''data-scrollable'''
  
When user swipe on the content of Listbox, Grid, Tree, the friendly scrollbar will appear. To disable the friendly scrollbar, please use the following setting<ref>For more information, please refer to [[ZK Component Reference/Tablet Devices/UI Enhancements/Listbox#Friendly_Scrolling_Support|ZK Component Reference Tablet Devices: Listbox]], [[ZK Component Reference/Tablet Devices/UI Enhancements/Grid#Friendly_Scrolling_Support|ZK Component Reference Tablet Devices: Grid]], [[ZK Component Reference/Tablet Devices/UI Enhancements/Tree#Friendly_Scrolling_Support|ZK Component Reference Tablet Devices: Tree]].</ref>.
+
if user scroll container widget which applying the data-scrollable attribute, the errorbox should scroll with container widget<ref>
 +
For more information, please refer to http://www.zkoss.org/javadoc/7.0.1/jsdoc/zul/ContainerWidget.html</ref>.
 +
<source lang="xml">
 +
<window height="100px" contentStyle="overflow:auto" ca:data-scrollable="true">
 +
</window>
 +
</source>
 +
 
 +
When user swipe on the content of Listbox, Grid, Tree in tablet device, the friendly scrollbar will appear. To disable the friendly scrollbar, please use the following setting<ref>For more information, please refer to [[ZK Component Reference/Tablet Devices/UI Enhancements/Listbox#Friendly_Scrolling_Support|ZK Component Reference Tablet Devices: Listbox]], [[ZK Component Reference/Tablet Devices/UI Enhancements/Grid#Friendly_Scrolling_Support|ZK Component Reference Tablet Devices: Grid]], [[ZK Component Reference/Tablet Devices/UI Enhancements/Tree#Friendly_Scrolling_Support|ZK Component Reference Tablet Devices: Tree]].</ref>.
 
<source lang="xml">
 
<source lang="xml">
 
<listbox xmlns:a="client/attribute" a:data-scrollable="false"/>
 
<listbox xmlns:a="client/attribute" a:data-scrollable="false"/>
 
</source>
 
</source>
  
 +
'''data-fixscrollposition'''
  
 
To prevent conflict with 'next' and 'previous' button on virtual keyboard on iPad.
 
To prevent conflict with 'next' and 'previous' button on virtual keyboard on iPad.

Revision as of 03:27, 26 March 2014


Client Attribute


Name: client attribute
Namespace: http://www.zkoss.org/2005/zk/client/attribute
Namespace shortcut: client/attribute
Java: LanguageDefinition.CLIENT_ATTRIBUTE_NAMESPACE

It is the reserved namespace for specifying client-side DOM attributes. Unlike the client namespace, which assigns something to widgets, the client/attribute namespace assigns additional DOM attributes to the DOM tree directly at the client.


Notice that if the widget's DOM output (Widget.redraw(Array)) also has the same DOM attribute, both of them will be generated and it is technically not legal. Thus, you shall prevent the DOM attributes that widget might output.

For example, suppose you want to listen to the onload event, and then you can do as follows[1].

<iframe src="http://www.google.com" width="100%" height="300px"
  xmlns:ca="client/attribute"
  ca:onload="do_whater_you_want()"/>


If the attribute contains colon or other special characters, you can use the attribute element as follows.

<div xmlns:ca="client/attribute">
  <attribute ca:name="ns:whatever">
  whatever_value_you_want
  </attribute>
</div>

data-swipeable

 ZK EE only

Each layout region in borderlayout can support to close and open the region area by user's swipe on the edge of the region with client/attribute[2].

<borderlayout xmlns:ca="client/attribute" ca:data-swipeable="true">
<!-- omitted -->
</borderlayout>


Tabbox support to switch the tab by user swipe on the edge of content with client attribute[3].

<tabbox xmlns:ca="client/attribute" ca:data-swipeable="true">
    <!-- omitted -->
</tabbox>


Within Tree, Grid, and Listbox, Paging can support to navigate previous page or next page by user swipe on the edge of content with client attribute[4].

<listbox mold="paging" pageSize="5" xmlns:ca="client/attribute" ca:data-swipeable="true"></listbox>


Calendar can support to switch the view by user swipe on the content with client/attribute[5].

<calendar xmlns:ca="client/attribute" ca:data-swipeable="true" />

data-scrollable

if user scroll container widget which applying the data-scrollable attribute, the errorbox should scroll with container widget[6].

<window height="100px" contentStyle="overflow:auto" ca:data-scrollable="true">
</window>

When user swipe on the content of Listbox, Grid, Tree in tablet device, the friendly scrollbar will appear. To disable the friendly scrollbar, please use the following setting[7].

<listbox xmlns:a="client/attribute" a:data-scrollable="false"/>

data-fixscrollposition

To prevent conflict with 'next' and 'previous' button on virtual keyboard on iPad. Only make the modal window slide back by appling data-fixScrollPosition attribute on input element.

<textbox xmlns:ca="client/attribute" ca:data-fixScrollPosition="true"></textbox>

The other use of the client-attribute namespace is to specify attributes that are available only to certain browsers, such as accessibility and Section 508.


  1. For more information, please refer to ZK Component Reference: iframe.
  2. For more information, please refer to ZK Component Reference Tablet Devices: Borderlayout.
  3. For more information, please refer to ZK Component Reference Tablet Devices: Tabbox.
  4. For more information, please refer to ZK Component Reference Tablet Devices: Paging.
  5. For more information, please refer to ZK Component Reference Tablet Devices: Calendar.
  6. For more information, please refer to http://www.zkoss.org/javadoc/7.0.1/jsdoc/zul/ContainerWidget.html
  7. For more information, please refer to ZK Component Reference Tablet Devices: Listbox, ZK Component Reference Tablet Devices: Grid, ZK Component Reference Tablet Devices: Tree.

Version History

Last Update : 2014/03/26


Version Date Content
5.0.3 July 2010 The client-attribute namespace was introduced.



Last Update : 2014/03/26

Copyright © Potix Corporation. This article is licensed under GNU Free Documentation License.