我正在使用dojo toolkit和phoneGap开发一个Android应用程序,它将显示从RSS源动态更新的一些信息。
我对链接及其描述的格式有疑问:
我正在尝试更改链接以成为适合移动设备的滑动EdgeToEdge列表,但是当我尝试使用Javascript插入代码时,点击和幻灯片不起作用,尽管按钮显示。
当前的HTML部分:
<div id="slideList" dojotype='dojox.mobile.EdgeToEdgeList' transition='slide' class='mblEdgeToEdgeList' style='' widgetid='slideListInner'>
</div>
有关剧本:
slideList = document.getElementById("slideList");
slideList.innerHTML=
"<li dojotype='dojox.mobile.ListItem' moveto='view2' class='mblListItem' id='dojox_mobile_ListItem_0' style='' widgetid='dojox_mobile_ListItem_0'><a class='mblListItemAnchor mblListItemAnchorNoIcon'><div class='mblListItemTextBox'>Alternative</div><div class='mblArrow'></div></a></li>" +
"<li dojotype='dojox.mobile.ListItem' moveto='metal' class='mblListItem' id='dojox_mobile_ListItem_1' style='' widgetid='dojox_mobile_ListItem_1'><a class='mblListItemAnchor mblListItemAnchorNoIcon'><div class='mblListItemTextBox'>Metal</div><div class='mblArrow'></div></a></li>" +
"<li dojotype='dojox.mobile.ListItem' moveto='progressive' class='mblListItem' id='dojox_mobile_ListItem_2' style='' widgetid='dojox_mobile_ListItem_2'><a class='mblListItemAnchor mblListItemAnchorNoIcon'><div class='mblListItemTextBox'>Progressive</div><div class='mblArrow'></div></a></li>" +
"<li dojotype='dojox.mobile.ListItem' moveto='randb' class='mblListItem' id='dojox_mobile_ListItem_3' style='' widgetid='dojox_mobile_ListItem_3'><a class='mblListItemAnchor mblListItemAnchorNoIcon'><div class='mblListItemTextBox'>R&B</div><div class='mblArrow'></div></a></li>";
正如您所看到的,我尝试在此处将dojo脚本的输出作为纯HTML插入。我也尝试添加整个dojo,就像这样:
<div dojoType="dojox.mobile.EdgeToEdgeList" id="slideList" transition="slide" >
<li dojoType="dojox.mobile.ListItem"
moveTo="view2">Alternative</li>
</div>
虽然结果令人失望。
我找到this link,这似乎差不多,但我不确定。也许我只是愚蠢地理解内容:)
有没有人遇到过和我一样的麻烦,或者想知道如何解决这个问题?也许我只是从错误的角度看待它..
---编辑---
找到一个像魅力一样的解决方案:)
var view = dijit.byId("view1");
var demoWidget = new dojox.mobile.EdgeToEdgeList();
view.addChild(demoWidget);
for(i = 0; i < numberOfLinks; i++){
console.log(nameArray[i]);
var childWidget = new dojox.mobile.ListItem({id:"listObject"+i, moveTo:"view2", label:nameArray[i]});
demoWidget.addChild(childWidget);
}
答案 0 :(得分:1)
找到一个像魅力一样的解决方案:)
var view = dijit.byId("view1");
var demoWidget = new dojox.mobile.EdgeToEdgeList();
view.addChild(demoWidget);
for(i = 0; i < numberOfLinks; i++){
console.log(nameArray[i]);
var childWidget = new dojox.mobile.ListItem({id:"listObject"+i, moveTo:"view2", label:nameArray[i]});
demoWidget.addChild(childWidget);
}
答案 1 :(得分:1)
在我开始使用“data-dojo-type”而不是“dojoType”之前,我遇到了同样的问题。这解决了我的问题(使用dojo 1.7,顺便说一句)。