タイトル通りの件で悩んだのでメモ。
同じサーバの場合は話が早いです。
jsでiframeで呼び出すコンテンツの高さを取ってきて、動的に書き換えればOK。
ie6以外のブラウザは、
contentWindow.document.documentElement.scrollHeight;
ie6は、
contentWindow.document.body.scrollHeight;
で、iframeの内容の高さを取って来れます。
それを、jQueryの$('iframe').height();とかで設定してやればいけます。
→続きを読む
- tag
- jQuery
- js
- json
jQueryのプラグインを作る。
とりあえずこう書きます。
$.fn.hoge = function(引数){
return this.each(function(){
//ここに処理を書く
});
}
これで例えば、hoge.jsと保存し、hoge.jsとjQuery本体を読み込みます。
そして、
$(function(){
$('div').hoge();
});
とすれば実行できます。すげー。
ちなみに、
(function($){
$.fn.hoge = function(){
return this.each(function(){
//ここに処理を書く
});
};
})(jQuery);
という書式もあった。どっちが正解なんだろう?
- tag
- jQuery
- js
- プラグイン
最近調べてやっとわかったのだけれども、
どうやらJavaScriptには小数点第*位を四捨五入する関数がないらしい。
小数点以下を、切捨て・切り上げ・四捨五入 というのはある。
それを使って実装しました。
まず、対象の数値を関数で処理されたくないところまで整数にします。
具体的に言うと小数点第1位なら、その数値を10で掛けます。
その後、Mathクラスの対応する関数で処理し、
さらにその後、10で割ります。
以上で意図した数値が出せます。
以下、実行例
//小数点第1位で四捨五入したい場合
var num = 12.3456;
num = Math.round(num * 10) / 10;
これでOK。
- tag
- js
という、およそ学生時代には社会に出て使う必要なし。と判断したものを調べる機会がありました。
二点をA(x1,y1)、B(x2,y2)とし、その間の距離を求める公式。
AB = √(x2-x1)×(x2-x1)+(y2-y1)×(y2-y1)
だそうです。
ちなみにこれをjsのスクリプトでやるとこうなります。
var dx = x2-x1;
var dy = y2-y1;
var dxy = Math.abs(dxdx+dydy);
AB = Math.round(Math.sqrt(dxy));
- tag
- js
- 数学