JavaScriptで印刷ダイアログを表示する

JavaScriptで印刷画面を表示するには、print() を呼び出せばOK。
でも、レイアウトとかちゃんとしないとダメなので、CSSとか使って印刷用の画面を用意してから行うのが普通ですね。

<html>
<head>
<script>
function printData(){
window.print();
}
</script>
</head>
<body>

<a href="#" onclick="printData();">TEST</a>

</body>
</html>

|

FireFoxでは、innerTextは使えない

innerTextはIEでしか使えないようですね。
すっかりはまりました。

FireFoxの場合は、判定し使い分ける必要がありそうです。

IEの場合
element.innerText = "文字列です";

Firefoxの場合
element.textContent = "文字列です";

// ブラウザ判定
if (typeof element.textContent != "undefined") {
element.textContent = "文字列です";
} else {
element.innerText = "文字列です";
}


Powered by ScribeFire.

|

JavaScriptでキーボードのキーハンドリング

JavaScriptで特定のキーの場合のみ処理を実施するというのは、意外と簡単にできてしまうようですね。。ショートカットキーのような機能が実施できそう。(便利ですね)

keyCode
は、イベントが発生した時に、キーボード上のどのキーが押されていたかを示すデータを取得することができるフィールド。
shiftKey、ctrlKey、altKey
は、イベントが発生した時に、Shiftキー、Ctrlキー、Altキーが押されていたかどうかを示す真偽値らしい。



Powered by ScribeFire.

|

JavaScriptでのバルーン表示

あちこちで紹介されていますが、このjavaScriptによるバルーン表示は、簡単で便利ですね。


Balloon tooltip

Powered by ScribeFire.

|

JavaScriptでイベントの発生位置を取得する際の注意

JavaScriptでイベント発生時の位置を取得するには、

eventオブジェクトのpageX,pageYをそれぞれ利用するが、IE(検証は6のみ)では、undefinedが

帰ってきてしまう。


そこで、IEでは下記のようにすることで回避が可能。


xpoint = document.body.scrollLeft +event.x;

ypoint = document.body.scrollTop +event.y;


よくevent.x,event.yで座標を取る例が書いてあるが、x,yは、それぞれ表示してるウィンドウ(フレームが切ってある場合は別)の左上からの位置だが、スクロールしている場合には、あまり有効な値とはいえない。


ページの左上からの位置を取るには、上記のようにpageXを使うか、スクロール位置とxの値を足した値を

利用しなければ実際のページ位置は取得できない。

| | コメント (0) | トラックバック (0)