我正在尝试使用以下内容将<div>包含<ul><li>结构的页面中的特定数据加载<div>到此页面上.目前正在发生的是,似乎"似乎"尝试在数据出现之前加载菜单.我这样说是因为我的菜单首先在页面上弹出一个NULL,这是默认的,然后我期待的列表会填充到<div id="hierarchy">我的空飞出菜单下.
我是JQuery的新手,所以希望这是一个简单,无知的错误.
<script type="text/javascript">
$(document).ready(function(){
$('div.ms-quickLaunch').replaceWith('<div id="hierarchy" style="border:solid 1px white; width:0px;"></div>');
});
$(function(){
$('#hierarchy').load('http://wwcshare/icenter/Pages/wwcMenuContent.aspx #menuContent'); // grab content from another page
$('#hierarchy').menu({
autoShow: true,
content: $('#hierarchy').next().html(),
backLink: false,
crumbDefaultText: ' '
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
.load()异步运行,您需要调用任何依赖于它在complete回调中加载的内容的函数,如下所示:
$(function(){
$('#hierarchy').load('http://wwcshare/icenter/Pages/wwcMenuContent.aspx #menuContent',
function() {
$(this).menu({
autoShow: true,
content: $(this).next().html(),
backLink: false,
crumbDefaultText: ' '
});
});
});
Run Code Online (Sandbox Code Playgroud)
在回调this中指的是你要加载的元素#hierarchy,所以你也可以在那里保存选择器.