Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Windows Phone 8中使用jquery mobile进行页面导航时出现问题_Jquery_Jquery Mobile_Cordova_Windows Phone 8 - Fatal编程技术网

在Windows Phone 8中使用jquery mobile进行页面导航时出现问题

在Windows Phone 8中使用jquery mobile进行页面导航时出现问题,jquery,jquery-mobile,cordova,windows-phone-8,Jquery,Jquery Mobile,Cordova,Windows Phone 8,我正在使用Phonegap和jQuery Mobile开发一个Windows Phone 8应用程序 我有一个用于页面导航的侧栏菜单。由于我对多个页面使用相同的菜单,我希望保持它的动态性,即在.js文件中生成 问题是:如果我在html文件中添加ul和li元素,链接将正确地导航到相应的页面。但是当我在js文件中添加ul和li元素时,链接没有响应 下面是正在使用的代码: var ulStr = '<div class="ui-panel-inner">'+

我正在使用Phonegap和jQuery Mobile开发一个Windows Phone 8应用程序

我有一个用于页面导航的侧栏菜单。由于我对多个页面使用相同的菜单,我希望保持它的动态性,即在.js文件中生成

问题是:如果我在html文件中添加ul和li元素,链接将正确地导航到相应的页面。但是当我在js文件中添加ul和li元素时,链接没有响应

下面是正在使用的代码:

var ulStr = '<div class="ui-panel-inner">'+
                    '<header class="nav-header">MUSCLES</header>'+
                    '<ul id="leftMenu'+identifier+'" data-role="listview" class="sidelist ui-listview">'+
                        '<li data-corners="false" data-shadow="false" data-iconshadow="true" data-wrapperels="div" data-icon="arrow-r" data-iconpos="right" data-theme="c" class="ui-btn ui-btn-icon-right ui-li-has-arrow ui-li ui-btn-up-c"><div class="ui-btn-inner ui-li"><div class="ui-btn-text"><a href="#Ch0C1" class="navlink ui-link-inherit" data-ajax="false">TERMINOLOGY</a></div><span class="ui-icon ui-icon-arrow-r ui-icon-shadow">&nbsp;</span></div></li>'+
                        '<li data-corners="false" data-shadow="false" data-iconshadow="true" data-wrapperels="div" data-icon="arrow-r" data-iconpos="right" data-theme="c" class="ui-btn ui-btn-icon-right ui-li-has-arrow ui-li ui-btn-up-c"><div class="ui-btn-inner ui-li"><div class="ui-btn-text"><a href="#Ch0C2" class="navlink ui-link-inherit" data-ajax="false">page 2 name</a></div><span class="ui-icon ui-icon-arrow-r ui-icon-shadow">&nbsp;</span></div></li>'+
                        '<li data-corners="false" data-shadow="false" data-iconshadow="true" data-wrapperels="div" data-icon="arrow-r" data-iconpos="right" data-theme="c" class="ui-btn ui-btn-icon-right ui-li-has-arrow ui-li ui-btn-up-c"><div class="ui-btn-inner ui-li"><div class="ui-btn-text"><a href="#Ch1C0" class="navlink ui-link-inherit" data-ajax="false">page 3 name</a></div><span class="ui-icon ui-icon-arrow-r ui-icon-shadow">&nbsp;</span></div></li>'+
                    '</ul>'+
                '</div>';

$('#leftNavmenu'+identifier).html("");
$('#leftNavmenu'+identifier).html(ulStr);
var-ulStr=''+
“肌肉”+
“
    ”+ “
  • ”+ “
  • ”+ “
  • ”+ “
”+ ''; $(“#leftNavmenu”+标识符).html(“”); $('#leftNavmenu'+标识符).html(ulStr);
同样的代码在android和iOS平台上正常工作。因此,不存在任何语法错误的可能性。如果有人能提供帮助,那就太好了。

jQuery Mobile的导航基于Ajax和hashchange。当您禁用Ajax(
dataajax=“false”
)时,浏览器将查找id来自锚标记的div

正如您在OP中提到的,它可以在iOS和Android上运行。这是因为触发了
hashchange
事件,因此发生了转换。但是,如果禁用
hashListeningEnabled
,它将无法在禁用Ajax的任何设备上工作


如果希望通过HTTP而不是ajax加载外部页面,请使用
data ajax=“false”
。它具有与
rel=“external”

相同的效果。如何在元素上创建链接?滚动代码部分@Alvaro li中有元素。如何使用jQuery处理锚。我在锚中指定了href@我要问的是:当你点击锚时会发生什么。如何通过jquery加载所需页面?如果是,怎么做?