Конфликт плоского меню Filament Group и FancyBox

Я использую плоское меню группы нитей. При нажатии на первый якорь я хочу открыть другую страницу в 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>

person Shant    schedule 22.05.2012    source источник
comment
укажите код клика привязки и .fancybox({ код для отображения страницы.   -  person Priyank Patel    schedule 22.05.2012
comment
Ниже приведен код клика привязки и код fancybox: $('a#aShowLevels').live('mousedown', function() { var l_sHref = ./tbl.aspx?id= + $(#txtId).val() ;$(a#aShowLevels).attr(href, l_sHref); $(this).trigger('click'); }); $(a#aShowLevels).fancybox({ 'showIframeLoading': true, 'enableEscapeButton': true, 'width': 680, 'height': 540 });   -  person Shant    schedule 22.05.2012
comment
отредактируй свой вопрос, братан. не читается.   -  person Priyank Patel    schedule 22.05.2012
comment
см. этот вопрос о стеке Overflow щелкните меня   -  person Priyank Patel    schedule 22.05.2012
comment
@PriyankPatel .. спасибо за комментарии и позвольте мне оправдаться по одному. Я пытался, но я не могу отформатировать свой код в поле для комментариев, за что я искренне извиняюсь, и перейти к коду fancybox, ну, как вы можете прочитать мой вопрос, код fancybox работает, если я удалю привязку вне div меню. Пожалуйста, прокомментируйте.   -  person Shant    schedule 22.05.2012
comment
Я нашел решение своей проблемы, но из-за политики репутации stackoverflow не могу опубликовать его. То же самое выложу через 6 часов.   -  person Shant    schedule 22.05.2012


Ответы (1)


Я нашел решение, которое выглядит следующим образом:

Изменены свойства якоря с ...

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

to

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

Удалено событие live и функция fancybox, прикрепленные к элементу a#aShowLevels, и добавлена ​​следующая функция:

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

кредит принадлежит @JFK (url: http://groups.google.com/group/fancybox/browse_thread/thread/4449cbde5e004365/98735950117f861b)

person Shant    schedule 22.05.2012
comment
Рад слышать, что некоторые старые посты все еще полезны :) - person JFK; 22.05.2012
comment
Вы должны принять свой собственный ответ, чтобы этот вопрос был закрыт, проверьте заголовок meta.stackexchange.com/questions/5234/ - person JFK; 22.05.2012
comment
Спасибо @JFK, но я не мог принять свой собственный ответ из-за моей репутации в соответствии с политиками Stackoverflow, но теперь я это сделал. Спасибо за краткое объяснение в вашей статье, которое помогло мне решить мою проблему. - person Shant; 25.05.2012