Javascript jquery UI不会在新的DOM元素上执行
我在chrome扩展中使用jQueryUI中的选项卡。但是,在插入一些新元素并运行Javascript jquery UI不会在新的DOM元素上执行,javascript,jquery,html,jquery-ui,Javascript,Jquery,Html,Jquery Ui,我在chrome扩展中使用jQueryUI中的选项卡。但是,在插入一些新元素并运行 $(function(){ $( "div" ).tabs(); }); 同样,新元素不会改变jquery选项卡的外观 我的html文件: <div id="tabs"> <h3 id = "tabId">Tab ID</h3> <ul> <li><a href="#0">Main Frame</a&
$(function(){
$( "div" ).tabs();
});
同样,新元素不会改变jquery选项卡的外观
我的html文件:
<div id="tabs">
<h3 id = "tabId">Tab ID</h3>
<ul>
<li><a href="#0">Main Frame</a></li>
</ul>
<div id="0">
</div>
</div>
选项卡ID
运行脚本后返回html;从控制台拍摄
TabStructure
<link rel="stylesheet" href="./jquery-ui-1.10.3/themes/base/jquery-ui.css">
<script src="./jquery-ui-1.10.3/jquery-1.9.1.js"></script>
<script src="./jquery-ui-1.10.3/ui/jquery-ui.js"></script>
<link rel="stylesheet" href="./jquery-ui-1.10.3/demos/demos.css">
<script src="background.js"></script>
<script src="tabStructure.js"></script>
</head>
<body>
<div id="tabs" class="ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible">
<!-- this works -->
<h3 id="tabId">Tab ID</h3>
<ul class="ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all" role="tablist">
<li class="ui-state-default ui-corner-top ui-tabs-active ui-state-active" role="tab" tabindex="0" aria-controls="0" aria-labelledby="ui-id-1" aria-selected="true"><a href="#0" class="ui-tabs-anchor" role="presentation" tabindex="-1" id="ui-id-1">Main Frame</a></li>
</ul>
<div id="0" aria-labelledby="ui-id-1" class="ui-tabs-panel ui-widget-content ui-corner-bottom ui-tabs ui-widget ui-corner-all ui-tabs-collapsible" role="tabpanel" aria-expanded="true" aria-hidden="false">
<p>Process ID : 130</p>
<ul> <!-- this part does not get processed by jquery ui-->
<li><a href="#18">Sub_Frame: 18</a></li>
<li><a href="#19">Sub_Frame: 19</a></li>
</ul>
<div id="18" class="ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible">Frame ID : 18</div>
<div id="19" class="ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible">Frame ID : 19</div></div>
</div>
</body></html>
选项卡ID
进程ID:130
帧ID:18
帧ID:19
更改DOM结构后需要调用该方法:
$( "div" ).tabs( "refresh" );
注意,这假设您已经预先初始化了插件您可能需要执行插件的
刷新
方法,以考虑初始化后添加的新DOM元素:
$('div').tabs('refresh');
$(函数(){$(“div”).tabs();})代码>仅执行1次(在document.ready上)…您需要执行$(“div”).tabs()代码>插入新div后