我正在尝试使用midori javascript框架构建一个类似Web对话框的向导。
这就是我所拥有的:
<div id="uploadTab">
<div id="categories" class="tab-set">
<ul>
<li class="tab-selected"><a id="tabConfig" href="#config">Configuration</a></li>
<li><a id="tabDescription" href="#description">Description</a></li>
</ul>
</div>
<div class="tab-content">
<div id="config">
<p>Hit Continue to go to next tab</p>
<div class="tabButton">
<input type="button" name="configNext" value="Continue" onclick="return selectTab('#tabDescription');" />
</div>
</div>
<div id="description" style="display: none">
Description
</div>
</div>
</div>
<script type="text/javascript">midori.addEventListener(window, 'ready', function (e) { midoriTab.init() } );</script>
在目标选项卡的链接上调用click()的javascript函数
function selectTab(tabID) {
var t=midori.get(tabID);
if (typeof t!='undefined') {
t.click();
}
return false;
}
这可以在firefox和opera中找到,但在chrome中我得到:
未捕获的TypError:对象:http://mysite.com#description没有方法'click'
我也尝试使用onclick()而不是click(),这给了我:
未捕获的TypeError:对象http://mysite.com#description的属性'onclick'不是函数
任何方式我都可以在Chrome中使用它?
答案 0 :(得分:0)
问题解决了:
发送onclick事件的更好方法,适用于opera,firefox和chrome:
function selectTab(tabID) {
var t=midori.get(tabID);
if (typeof t!='undefined') {
var e = document.createEvent('MouseEvents');
e.initMouseEvent( 'click', true, true, window, 1, 0, 0, 0, 0, false, false, false, false, 0, null );
t.dispatchEvent(e);
}
return false;
}