ホーム > タグ > js

js

休日とか、カレンダーを制御してみる

CMSとかでエントリー毎にカレンダーがあって、任意の日を休日に指定したいとか、満室です-とかしたい場合に、CMSで対象の日の値だけ渡して、あとはjsでやれるんじゃない?
と思って書いてみました。

Continue reading

ie6/7で、強引にdisplay:table-cell;風

画像が並ぶようなコンテンツで、サムネールが以下のように配置される可能性がある場合、

サンプル

Continue reading

xml宣言をする事による、jsでの不具合

結果だけ見ると、なんて事ないのですが、ハマったのでメモ。

例えば、こんなソースです。

<?xml version="1.0" encoding="UTF-8"?>
<html>
<head>
//略
<style type="text/css">
li {
    float: left;
    padding-bottom: 10px;
}
</style>
</head>
<body>
<ul>
    <li>テキスト<br />テキスト</li>
    <li>テキスト</li>
    <li>テキスト</li>
</ul>
</body>
</html>

Continue reading

CMSで生成したhtmlを、別サーバのhtmlでiframeを使って表示する場合、高さが算出できない件

タイトル通りの件で悩んだのでメモ。

同じサーバの場合は話が早いです。
jsでiframeで呼び出すコンテンツの高さを取ってきて、動的に書き換えればOK。

ie6以外のブラウザは、

contentWindow.document.documentElement.scrollHeight;

ie6は、

contentWindow.document.body.scrollHeight;

で、iframeの内容の高さを取って来れます。
それを、jQueryの$(‘iframe’).height();とかで設定してやればいけます。

Continue reading

jQueryのプラグインを作ってみる

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);

という書式もあった。どっちが正解なんだろう?

jsでの小数点第*位を四捨五入

最近調べてやっとわかったのだけれども、
どうやらJavaScriptには小数点第*位を四捨五入する関数がないらしい。

小数点以下を、切捨て・切り上げ・四捨五入 というのはある。

それを使って実装しました。

まず、対象の数値を関数で処理されたくないところまで整数にします。
具体的に言うと小数点第1位なら、その数値を10で掛けます。
その後、Mathクラスの対応する関数で処理し、
さらにその後、10で割ります。
以上で意図した数値が出せます。
以下、実行例

//小数点第1位で四捨五入したい場合
var num = 12.3456;

num = Math.round(num * 10) / 10;

これでOK。

.animateで色を制御するプラグイン『Color Animations』

jQueryの.animate()は、デフォルトでは数値型の制御しかできないらしい。 色のアニメーションをさせたかったので、探したらありました。

参考url:http://h2ham.seesaa.net/article/107837321.html

対象のjsファイルを<head>の<script>で読み込むだけで、.animate()で色の制御が可能になります。

二点間の距離

という、およそ学生時代には社会に出て使う必要なし。と判断したものを調べる機会がありました。

二点を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));

Home > Tags > js

Search
Banner

Feeds
Meta

Return to page top