0

フュージョン チャート スワップを実行しようとしましたが、ASP はそれが好きではありません。したがって、次善の策は、フュージョン チャートをレンダリングしてから、onmousedown でチャートを画像に置き換えることです。これだけでもうまくいきません。コードの周りに div を追加して id を使用しようとしましたが、スワッピングが機能しません。document.popChartDiv.src で「popChartDiv」を使用しましたが、この ID が Literal3 のレンダリングを呼び出しています。その下にある 2 つの div (testimage.png と testimage1.png) で Literal3 を切り替える方法がわかりません。チャートが焦点であり、画像がチャートを上書きできないようです。z-index も使用してみましたが、うまくいきませんでした。だから私は立ち往生しています。

<div style="width:798px; margin-left:auto; margin-right:auto; height:250px; float:left; overflow:hidden;" id="popChartDiv">
    <script src="../../Dashboard/Charts/FusionCharts.js" type="text/javascript"></script>
    <div id="popChartContainer"></div>
    <asp:Literal ID="Literal3" Visible="true" runat="server"></asp:Literal>
         <div id="line3ChartContainer"></div>
         <asp:Literal ID="Literal9" Visible="true" runat="server"></asp:Literal>
         <img src="/images/testimage.png" width="798" height="250" name="swap"/>
</div>
<div style="width:38px; height:250px; float:left;">
    <img src="../../images/labortab.png" style="float:left; width:38px; height:125px;" id="labor" onmousedown="document.swap.src='/images/testimage.png';"/>
    <img src="../../images/odctab.png" style="float:left; width:38px; height:125px;" id="odc" onmousedown="document.swap.src='/images/testimage1.png';"/> 
    <script type="text/javascript">
        $('#labor').hover(function () {
            $(this).attr('src', '/images/labortabhover.png');
        }, function () {
            $(this).attr('src', '/images/labortab.png');
        });

        $('#odc').hover(function () {
            $(this).attr('src', '/images/odctabhover.png');
        }, function () {
            $(this).attr('src', '/images/odctab.png');
        });


        </script>
</div>
4

1 に答える 1

0

Flash ベースのグラフをレンダリングしている場合、ウィンドウ モード ( wMode) が に設定されている可能性がありますwindow。ウィンドウ モード パラメータが に設定されている場合、SWF オブジェクトの z-Index が無視されることを示す、SWF のスタック順序に関するアドビのヘルプ記事がありますwindow

純粋な ASP.NET (C#) でRenderChartメソッドを使用している場合は、9 番目のパラメーターを true (または false) に設定すると役立ちます。FusionCharts の C# ドキュメントを使用して最初のグラフを作成するの関連セクションを参照してください。

JavaScript での作業に慣れている場合はsetTransparent(false);、チャートを呼び出して、wMode を不透明または透明に設定してみてください。

チャート ID が であると仮定するとline3Chart、コードは次のようになります。

<script type="text/javascript">
    // Add this code snippet. Make sure to replace
    // "line3Chart with correct chart id
    FusionCharts("line3Chart").setTransparent(false);

    $('#labor').hover(function () {
        $(this).attr('src', '/images/labortabhover.png');
    }, function () {
        $(this).attr('src', '/images/labortab.png');
    });

    $('#odc').hover(function () {
        $(this).attr('src', '/images/odctabhover.png');
    }, function () {
        $(this).attr('src', '/images/odctab.png');
    });
</script>
于 2013-07-17T19:07:28.800 に答える