Files
openlayers/master/examples/TabBar_Programmatic.html
Éric Lemoine 5d14b9e2d4 Updated
2013-02-20 10:38:25 +01:00

162 lines
9.0 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,minimum-scale=1,user-scalable=no"/>
<meta name="apple-mobile-web-app-capable" content="yes" />
<title>TabBar</title>
<link href="../../themes/iphone/iphone.css" rel="stylesheet">
<style>
.label {
font-family: "Helvetica Neue", Helvetica;
font-size: 13px;
margin-top: 20px;
}
.view {
font-size: 30px;
margin-top: 30px;
text-align: center;
}
</style>
<script type="text/javascript" src="../../../../dojo/dojo.js" djConfig="parseOnLoad: true"></script>
<script language="JavaScript" type="text/javascript">
//dojo.require("dojo.parser"); // Use the lightweight parser.
dojo.require("dojox.mobile.parser");
dojo.require("dojox.mobile");
dojo.require("dojox.mobile.TabBar");
dojo.requireIf(!dojo.isWebKit, "dojox.mobile.compat");
</script>
<script language="JavaScript" type="text/javascript">
dojo.addOnLoad(function(){
dojo.create("div", {className:"label", innerHTML:"Segmented Control"}, dojo.doc.body);
var tabBar = new dojox.mobile.TabBar({barType:"segmentedControl"});
dojo.doc.body.appendChild(tabBar.domNode);
tabBar.startup();
var tabBarButton = new dojox.mobile.TabBarButton({icon1:"../images/tab-icon-16.png", icon2:"../images/tab-icon-16h.png", moveTo:"view1", selected:"true", label:"New"});
tabBar.addChild(tabBarButton);
tabBarButton = new dojox.mobile.TabBarButton({icon1:"../images/tab-icon-15.png", icon2:"../images/tab-icon-15h.png", moveTo:"view2", label:"What's Hot"});
tabBar.addChild(tabBarButton);
tabBarButton = new dojox.mobile.TabBarButton({icon1:"../images/tab-icon-10.png", icon2:"../images/tab-icon-10h.png", moveTo:"view3", label:"Genius"});
tabBar.addChild(tabBarButton);
dojo.create("div", {className:"label", innerHTML:"Tab Bar"}, dojo.doc.body);
tabBar = new dojox.mobile.TabBar();
tabBarButton = new dojox.mobile.TabBarButton({icon1:"../images/tab-icon-16.png", icon2:"../images/tab-icon-16h.png", moveTo:"view1", selected:"true", label:"New"});
tabBar.addChild(tabBarButton);
tabBarButton = new dojox.mobile.TabBarButton({icon1:"../images/tab-icon-15.png", icon2:"../images/tab-icon-15h.png", moveTo:"view2", label:"What's Hot"});
tabBar.addChild(tabBarButton);
tabBarButton = new dojox.mobile.TabBarButton({icon1:"../images/tab-icon-10.png", icon2:"../images/tab-icon-10h.png", moveTo:"view3", label:"Genius"});
tabBar.addChild(tabBarButton);
dojo.doc.body.appendChild(tabBar.domNode);
tabBar.startup();
dojo.create("div", {className:"label", innerHTML:"Tab Bar (CSS Sprite)"}, dojo.doc.body);
tabBar = new dojox.mobile.TabBar({iconBase:"../images/tab-icons.png"});
dojo.doc.body.appendChild(tabBar.domNode);
tabBarButton = new dojox.mobile.TabBarButton({iconPos1:"0,0,29,29", iconPos2:"29,0,29,29", selected:"true", label:"Featured"});
tabBar.addChild(tabBarButton);
tabBarButton = new dojox.mobile.TabBarButton({iconPos1:"0,29,29,29", iconPos2:"29,29,29,29", label:"Categories"});
tabBar.addChild(tabBarButton);
tabBarButton = new dojox.mobile.TabBarButton({iconPos1:"0,58,29,29", iconPos2:"29,58,29,29", label:"Top 25"});
tabBar.addChild(tabBarButton);
tabBarButton = new dojox.mobile.TabBarButton({iconPos1:"0,87,29,29", iconPos2:"29,87,29,29", label:"Search"});
tabBar.addChild(tabBarButton);
tabBarButton = new dojox.mobile.TabBarButton({iconPos1:"0,116,29,29", iconPos2:"29,116,29,29", label:"Updates"});
tabBar.addChild(tabBarButton);
tabBar.startup();
var view = new dojox.mobile.View({id:"view1", selected:"true", innerHTML:'<div class="view">View 1</div>'});
dojo.doc.body.appendChild(view.domNode);
view.startup();
view = new dojox.mobile.View({id:"view2", innerHTML:'<div class="view">View 2</div>'});
dojo.doc.body.appendChild(view.domNode);
view.startup();
view = new dojox.mobile.View({id:"view3", innerHTML:'<div class="view">View 3</div>'});
dojo.doc.body.appendChild(view.domNode);
view.startup();
});
</script>
<script type="text/javascript" src="TestUtil.js"></script>
<script language="JavaScript" type="text/javascript">
dojo.addOnLoad(function(){
doh.register("dojox.mobile.test.doh.TabBar", [
{
name: "TabBar and TabBarButton Verification",
timeout: 4000,
runTest: function(){
var d = new doh.Deferred();
setTimeout(d.getTestCallback(function(){
var demoWidget = dijit.byId("dojox_mobile_TabBar_0");
doh.assertTrue(dojo.hasClass(demoWidget.domNode, 'mblTabPanelHeader'));
demoWidget = dijit.byId("dojox_mobile_TabBarButton_0");
doh.assertEqual('mblTabButton mblTabButtonSelected', demoWidget.domNode.className);
doh.assertEqual('mblTabBarButtonAnchor', demoWidget.domNode.childNodes[0].className);
doh.assertEqual('mblTabBarButtonDiv', demoWidget.domNode.childNodes[0].childNodes[0].className);
doh.assertEqual('mblTabBarButtonIcon', demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].className);
if(!dojo.isIE) {
doh.assertTrue(demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].childNodes[0].src.search(/tab-icon-16.png/i) != -1);
}
doh.assertEqual('hidden', demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].style.visibility);
if(!dojo.isIE) {
doh.assertTrue(demoWidget.domNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0].src.search(/tab-icon-16h.png/i) != -1);
}
doh.assertEqual('', demoWidget.domNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0].style.visibility);
doh.assertEqual('New', dojo.trim(demoWidget.domNode.childNodes[0].childNodes[1].innerHTML));
demoWidget = dijit.byId("dojox_mobile_TabBar_1");
doh.assertEqual('mblTabBar', demoWidget.domNode.className);
demoWidget = dijit.byId("dojox_mobile_TabBarButton_3");
doh.assertEqual('mblTabBarButton mblTabButtonSelected', demoWidget.domNode.className);
doh.assertEqual('mblTabBarButtonAnchor', demoWidget.domNode.childNodes[0].className);
doh.assertEqual('mblTabBarButtonDiv', demoWidget.domNode.childNodes[0].childNodes[0].className);
doh.assertEqual('mblTabBarButtonIcon', demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].className);
doh.assertEqual('', demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].style.display);
if(!dojo.isIE) {
doh.assertTrue(demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].childNodes[0].src.search(/tab-icon-16.png/i) != -1);
}
doh.assertEqual('hidden', demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].style.visibility);
if(!dojo.isIE) {
doh.assertTrue(demoWidget.domNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0].src.search(/tab-icon-16h.png/i) != -1);
}
doh.assertEqual('', demoWidget.domNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0].style.visibility);
doh.assertEqual('New', dojo.trim(demoWidget.domNode.childNodes[0].childNodes[1].innerHTML));
demoWidget = dijit.byId("dojox_mobile_TabBar_2");
doh.assertTrue(dojo.hasClass(demoWidget.domNode, 'mblTabBar'));
demoWidget = dijit.byId("dojox_mobile_TabBarButton_6");
doh.assertEqual('mblTabBarButton mblTabButtonSelected', demoWidget.domNode.className);
doh.assertEqual('mblTabBarButtonAnchor', demoWidget.domNode.childNodes[0].className);
doh.assertEqual('mblTabBarButtonDiv', demoWidget.domNode.childNodes[0].childNodes[0].className);
doh.assertEqual('mblTabBarButtonIcon', demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].className);
doh.assertEqual('', demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].style.display);
if(!dojo.isIE) {
doh.assertTrue(demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].childNodes[0].src.search(/tab-icons.png/i) != -1);
}
doh.assertEqual('hidden', demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].style.visibility);
verifyRect(demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].childNodes[0], "0px", "29px", "29px", "0px");
if(!dojo.isIE) {
doh.assertTrue(demoWidget.domNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0].src.search(/tab-icons.png/i) != -1);
}
doh.assertEqual('', demoWidget.domNode.childNodes[0].childNodes[0].childNodes[1].childNodes[0].style.visibility);
verifyRect(demoWidget.domNode.childNodes[0].childNodes[0].childNodes[0].childNodes[0], "0px", "29px", "29px", "0px");
doh.assertEqual('Featured', dojo.trim(demoWidget.domNode.childNodes[0].childNodes[1].innerHTML));
}),500);
return d;
}
}
]);
doh.run();
});
</script>
</head>
<body>
</body>
</html>