2016年2月7日日曜日

JavaScript文法まとめ

Javascriptの文法をまとめたものです。すぐに忘れてしまうので自分で参照する用です。
もし間違いがあったら教えて下さい。

2012年6月29日金曜日

wordpress アクションフック

An Introduction to WordPress Action Hooks
function.phpに追加する。

add_action('wp_head', 'insert_some_css');
//以下、関数のコードを追加

第一引数にアクション名、第二引数にアクションフック名を記述する。

2012年6月15日金曜日

要素の情報を表示する

firefoxのwebdeveloperには同じような機能(しかも高機能)がすでにありますが、似たようなものを作ってみました。

var mouseBox = function(element){

 var elem = document.getElementsByTagName(element);
 for(var i=0; i < elem.length; i++)
 {
      //すべての要素にイベントを設置
  elem[i].addEventListener('mouseover',function(e){//
  
      //わかりやすいよう枠でかこむ 
  this.style.border = '1px solid';
  this.style.borderColor = 'red';
  
      //新しくdivを作成し表示場所をつくる。
  var child = document.createElement('div');
  child.id = 'child';
  child.style.border = '1px solid';
  child.style.background = '#FFE4B5';
  
               //css情報の取得  
  var rule = getMatchedCSSRules(this,'');
  var style = rule[rule.length - 1].cssText;
  
      //取得した情報を表示
  var text = document.createTextNode(element + '#' + this.id + ' .' + this.className + '  style ' +style);
  this.appendChild(child);
  child.appendChild(text);
  e.stopPropagation();//バブリングをストップ
  },false);
  
      //マウスが離れたら表示場所を削除
  elem[i].addEventListener('mouseout',function(e){
  this.style.border = 'none';
  this.style.borderColor = '';
  var child = document.getElementById('child');
  child.parentNode.removeChild(child);
  e.stopPropagation();},false);
 }
}

今回はdivを作ってそこへ情報を流し込んでいますが、ツールチップみたいにしてもよさそうです。あとcssスタイルが改行されてないままテキストで出てるので、ちょっと読みにくいです。

2012年5月20日日曜日

Wordpressの画像の扱い

wp_postテーブルのpost_contentへパスを含めたタグをそのまま入れている。 html生成時にそのままコンテンツと一緒に出力しているようだ。 画像ファイルはフォルダ(wp_content/uploads)以下に年数、月ごとにフォルダを作って配置してる。

2012年4月25日水曜日

関数とコンストラクタの違い


var x = 1;

var fn1 = function(){

  print(this.x);

};  

fn1();
//結果は1。thisはfn1オブジェクトではなくグローバルを指している。

print(fn1.x);
//undefined

var fn2 = function(x){

  this.x = x;
}:


var F1 = new fn2(10);
var F2 = new fn2(5);

print(F1.x); //10
print(F2.x) //5
//fn2内のthisは新規オブジェクトを指している。
関数実行時にnewをつけると,関数内でのthisの意味が変わり,「新規オブジェクト」を指すようになる。 newをつけて実行される関数は,新規オブジェクトの生成メソッド(コンストラクタ)として機能する。

2012年4月23日月曜日

FirefoxでのinnerHTML

FirefoxでもinnerHTMLは使える。 要素をdocument.boxのようにではなくgetElementByIdで指定する。
document.getElementById('text').innerHTML='hogehoge';

JavaScript  XMLファイルの読み込み

用意したXMLファイル

<?xml version="1.0" encoding="utf-8"?>
 
  
   1
    大阪太郎
  
  
   2
    京都越太朗
 
  
   3
    三重三郎
 
 
このXMLファイルを読み込む。

<html>

外部XMLファイルの読み込み

 
ボタンを押すとxmlを読み込んでdiv部分に表示する。
注意:Firefoxではそのまま表示されるが、ChromeやIEではサーバーを介してでないと表示されない。 IEやChromeではHTTPプロトコルで通信を行ったときのみXMLHttpRequestが動作する。