0

非表示にしてからjQuery経由で表示する必要があるdivがあります。

その div 内には、asp テキスト ボックスの透かしエクステンダーが割り当てられた asp テキスト ボックスがあります。

div を表示したままにすると、すべて正常に動作します。ただし、div を非表示にすると、表示時に、テキストボックスをクリックしてクリックするまで透かしエクステンダーは表示されません。

次の方法でdivを表示/非表示にしようとしました:

  • 表示: なし; そして .fadeIn('slow'); 経由で表示されます。
  • 高さ: 0; .animate({ 'height': '200px' }, "slow"); で表示されます。

いずれの場合も、div が表示されたときに透かしは表示されません。

誰もこの問題に遭遇したことがありますか。この問題を回避するために div を表示/非表示にする jQuery の他の方法はありますか。

<asp:ImageButton ID="btnFilter" runat="server" ImageUrl="mmmmmmmmmmmmm" OnClientClick="AnimateDivHeight('divFilter', 150)" />
<div id="divFilter" style="height: 0px; overflow: hidden;">
            <asp:Panel ID="pnlListsFilters" ClientIDMode="Static" runat="server">                                        

                                <asp:TextBox ID="txtListsFilterSearch" runat="server" CssClass="formfield" Width="220" AutoPostBack="true" />
                                <asp:TextBoxWatermarkExtender id="tbweListsFilterSearch" runat="server" WatermarkCssClass="formfield-watermarked" WatermarkText="e.g. created by, tags, title" TargetControlID="txtListsFilterSearch" />&nbsp;&nbsp;

            </asp:Panel>
        </div>


function AnimateDivHeight(div, height) {
if ($('#' + div).height() == 0) {
    $("#" + div).animate({ 'height': height + 'px' }, "slow");
}
else {
    $("#" + div).animate({ 'height': '0px' }, "slow");
}

}

ありがとう。

4

1 に答える 1

0

hover()関数を使用してみましたか? http://api.jquery.com/hover/

2番目のdivを非表示にして、ホバーで表示することにより、サブメニューを作成しました。ホバーなしで表示させようとしている場合、おそらくonLoadイベントですか?

これが役立つ場合は、サブメニューで行ったことです...

$(document).ready(function () {             /* Function to create Sub Menus */


    var speed = 600;                                      //The Variable 'speed' is in milliseconds 
    $('li').hover(function () {               //Hover Function
                                  //Show its submenu            
   $(this).children('.nav2').stop().slideDown(speed);     
        },
        function () {
   $(this).children('.nav2').stop().hide(speed);
   });
于 2013-02-22T16:32:12.640 に答える