Seo tools

Neo Inspiration

  • Search

    • About Me

      • inspi 改め
        jakk@webアーキテクト(自称)
        php,javascript,seoなど
        得意技は extract();



  • Categories

  • Ranking

  • Comments

  • Others


  • Archive for the ‘Javascripts’ Category

    36進数

    木曜日, 10 月 9th, 2008

    36進数を新しいサービスで使おうと思って
    作ってたわけです。
    いや 思いついたら面白くなってしまったというオチなんですが。

    こんなかんじで。

    function decodeDec36($decimal='') {
        if (preg_match('/^[0-9a-z]+$/’,$decimal)) {
            $stack = array(’0′,’1′,’2′,’3′,’4′,’5′,’6′,’7′,’8′,’9′,’a',’b',’c',’d',’e',’f',’g',’h',’i',’j',’k',’l',’m',’n',’o',’p',’q',’r',’s’,'t’,'u’,'v’,'w’,'x’,'y’,'z’);
    
            $dec35 = 0;
            $len = strlen($decimal);
            for ($i=1; $i<=$len; $i++) {
                $tmpDec = array_search(substr($decimal,-$i,1),$stack,true);
                $dec35 += (int) $tmpDec * pow(36,$i - 1);
            }
            return $dec35;
        } else {
            return false;
        }
    }
    
    function encodeDec36($number='') {
        if (is_numeric($number)) {
            $stack = array('0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z');
    
            $enc35 = '';
            $tempEnc = array();
            while (($floor = floor((int) $number / 36)) != 0) {
                $tempEnc[] = $number % 36;
                $number = $floor;
            }
            $tempEnc[] = $number;
    
            $tempEnc = array_reverse($tempEnc);
            foreach ($tempEnc as $k=>$v) {
                $enc35 .= $stack[$v];
            }
            return $enc35;
        } else {
            return false;
        }
    }
    

    反省はしてない。

    と勢いで作っていたらふと javascript の toString(36) を思い出した。

    あれってPHPでねえのとおもったらあった・・・

    $encoded = base_convert($number,10,36); //10進数の$numberを36進数に変換

    無知って罪だ。
    やっぱり反省します。

    FirefoxとIEでヤフカテのリンクが違う件

    月曜日, 4 月 14th, 2008

    こんなエントリーがあったので
    YahooカテゴリのリンクがIEとfirefoxでは違う
    調べてみた。

    状況確認

    IEでみると
    <a href=”http://www.searchengineoptimization.jp/” onmousedown=”return catrd(this,’&l=SIT&sid=2077584930&ssid=2076957840&loc=1&sig=1c4257cfbecbbc422d0d69bb26b0eac8&rd=’,”,’site’);”>SEO検索エンジン最適化</a>

    Firefoxでみると
    <a onmousedown=”" href=”http://dir.yahoo.co.jp/proc/?m=redir&l=SIT&sid=2077584930&ssid=2076957840&loc=1&sig=1c4257cfbecbbc422d0d69bb26b0eac8&rd=http%3A%2F%2Fwww.searchengineoptimization.jp%2F”>SEO検索エンジン最適化</a>

    おお確かに違う

    でもそういや似たようなこと俺もやったな。。

    onmousedown って確か Javascriptの挙動の違いがあったきがしたなぁ。。
    と思い出したんで、ちょっとテストしてみました。

    このページでIEとFirefoxで 右クリックしてみてください。
    テストページ

    あれれ?

    そう Firefoxだと右クリで javascript が反応してないですね。;

    ようはブラウザによってjavascript の挙動が違うので正確なクリックカウントができないじゃんということなんでしょうね。。
    たぶん本当なら統一したほうがいいので、 firefoxバージョンでやるのがいいんだけど
    SEOの効果がないとヤフカテが売りあげに影響がある・・

    なんてことだったりしたら面白いですね!

    というわけで、意図的にプログラム側で書き分けているっていうのが結論です。

    おまけ

    ちなみに 選択した部分のソースを表示ってやるのと、CTRL+U押すのとで、
    結果が変わるのは、Firefoxの仕様で
    取得したHTMLをDOMツリーに展開した後でその部分のソースを見てるからだそうです。
    (CTRL+Uを押した時はDOMツリーに展開前のソースを表示させているということですね)

    javascript で style.display したらフォーカスが消えた

    火曜日, 1 月 29th, 2008

    javascript で style.display したらフォーカスが消えました。

    こんな感じのJSを作っていて

    function clickable(){
        document.getElementById(’hidden’).style.display = “none”;
        document.getElementById(’visible’).style.display = “block”;
    }

    こんな感じのinput

    <input type=text id=clickable onBlur=clickable() />

    <input type=text id=hidden />
    <input type=text id=visible />

    みたいな設定になったときに
    id=clickableでTABキーおすとフォーカスが消えます。
    どこをクリックしてもフォーカスしません。(実際はしてるんだけどカーソルが見えない)

    こんな感じ:テストHTML

    たぶんhidden(描画しない設定)になったとこにフォーカスが当たってそっからでなくなる?
    ような気がします。

    描画しない display を 単に表示しない visiblity にすれば問題は解決するけど、
    レイアウトの問題もあるので、display のままでなんとかならないかなーと試行錯誤したら
    Tabを押したときに強制的にどっかをフォーカスするといいみたいです。

    でもどっかフォーカスといって
    document.getElementById(’visible’).focus();

    ではだめみたいです。
    処理の順番の関係かな。

    この場合は
    document.getElementById(’clickable’).focus();

    を付け加えればうまくいきます。

    2008/11/22 05:57:53