0

これは私の前の質問の延長です。ページ内のすべてのグラフを一度に印刷することで正常に機能するボタンをphp Webページに正常に追加しました。私は次の方法を行いました

function printdiv(printpage)
{
var headstr = '<html><head><title>Graphs</title></head>'+'<link rel="stylesheet" type="text/css" href="../css/template.css" />'+'<body><br/><br/><br/>';
var footstr = "</body>";
var newstr = document.all.item(printpage).innerHTML;
var oldstr = document.body.innerHTML;
document.body.innerHTML = headstr+newstr+footstr;
window.print();
document.body.innerHTML = oldstr;
return false;
die();
}


<input name="b_print" type="button" class="ipt"   onClick="printdiv('graphs');" value="Graphs">

私が今抱えている問題の1つは、印刷ボタンをクリックするとプレビューがポップアップし、印刷が完了すると、そのページのすべてのハイチャートが非アクティブになることです(たとえば、カーソルをチャートの上に移動して、そうでないことをしようとすると)ページを更新するまで応答します)。ここで何が起こっているのか手がかりはありますか?

前もって感謝します

4

1 に答える 1

1

innerHTML を変更したため、すべてのイベント リスナー (この場合はチャートとのインタラクションの使用を処理するため) が同時に削除されました。

ポップアップ ウィンドウを生成して を配置するheadstr+newstr+footstrか、CSS メディア セレクターなどのより洗練された方法を使用して、この問題を防ぐことができます。

于 2012-07-25T16:42:21.337 に答える