我有一个名为 的函数flyout
,它在单击按钮时将菜单 div 滑入并在再次单击时滑出。
问题 1:它在 Chrome、FF 等中运行良好,但 IE9 告诉我flyout is undefined
,虽然该功能仍然有效。
问题 2:在 IE8 中没有错误消息,但菜单一键滑入和滑出。
我不确定,但我希望这两个问题是相关的。我对 Jquery 和 Jquery UI 还很陌生,所以不确定我是否正确使用了所有内容。任何帮助将不胜感激。
外部 javascript 文件中的 JS:
$(function flyout() {
$(".btn-toggle").click(function (e) {
var newSelector = $('#flyout-' + $(this).attr('id')),
toggle = newSelector.css('display') == 'block';
e.preventDefault();
newSelector.toggle('slide', { direction: 'right' }, 300);
$('.hide').not(newSelector).hide('slide', { direction: 'right' }, 300);
if (!toggle) {
newSelector.children('.l-menu').effect('highlight', 1000);
$('a.btn-toggle i').removeClass('icon-chevron-right');
$(this).find('.icon-chevron-left').toggleClass('icon-chevron-right');
} else {
$(this).find('.icon-chevron-left').toggleClass('icon-chevron-right');
};
});
});
HTML 和 JS:
<a href="#" id="fo2" class="btn btn-small btn-info btn-toggle"><i class="icon-chevron-left"></i> <i class="icon-thumbs-up"></i> Helpful Hints</a>
<a href="#" id="fo1" class="btn btn-small btn-amber btn-toggle"><i class="icon-chevron-left"></i> <i class="icon-tasks"></i> Progress</a>
<div id="flyout-fo2" class="fixed-tr hide">
...Menu HTML
</div>
<div id="flyout-fo1" class="fixed-tr2 hide">
...Menu HTML
</div>
<script type='text/javascript' language='javascript'>
$(document).ready(function () {
flyout();
});
</script>