Filament Group Flat Menu和FancyBox冲突

时间:2012-05-22 09:51:37

标签: jquery jquery-ui fancybox conflict

我正在使用灯丝组平面菜单。点击第一个锚点,我想在FancyBox中打开另一个页面,但它似乎不起作用。单击时,另一个页面将在同一窗口中打开,而不是在FancyBox中打开。如果,我在菜单div之外使用相同的锚点,FancyBox没有任何问题。请帮忙。

开发环境:ASP.NET 4.0,JQuery v1.7,JQuery UI v1.8.18,FancyBox v1.3.4

以下是JQuery代码供参考:

$('a#aShowLevels').live('mousedown', function() {
    var l_sHref = "./tbl.aspx?iframe?id=" + $("#hftbTID").val();
    $("a#aShowLevels").attr("href", l_sHref);
    $(this).trigger('click');
});

$("a#aShowLevels").fancybox({
    'showIframeLoading': true,
    'enableEscapeButton': true,
    'width': 680,
    'height': 540
});

以下是HTML代码:

<a tabindex="0" href="#divMenuOptions" class="fg-button fg-button-icon-right ui-widget ui-state-default ui-corner-all" id="flatMenu"><span class="ui-icon ui-icon-triangle-1-s"></span>Options</a>
<div id="divMenuOptions" class="hidden">
    <ul>
    <li><a id="aShowLevels" href="#" class="iframe" runat="server">Show Bids</a></li>
    <li><asp:LinkButton ID="lkbtnConvertToPO" runat="server" PostBackUrl="~/po.aspx">Convert to PO</asp:LinkButton></li>
    </ul>
</div>

1 个答案:

答案 0 :(得分:0)

我找到了如下解决方案:

更改了锚点属性...

<li><a id="aShowLevels" href="#" class="iframe" runat="server">Show Bids</a></li>

<li><a id="aShowLevels" href="#" runat="server" onclick="var goURL='./tbl.aspx?id=' + $('#hftbTID').val();openFB(goURL)">Show Bids</a></li>

删除了附加到 a#aShowLevels 元素的实时事件和fancybox功能,并添加了以下功能:

    function openFB(url) {
        $.fancybox({
            'href': url,
            'type': 'iframe',
            'width': '95%',
            'height': '90%'
        });
    }

归功于@JFK(网址:http://groups.google.com/group/fancybox/browse_thread/thread/4449cbde5e004365/98735950117f861b