Javascriptの文法をまとめたものです。すぐに忘れてしまうので自分で参照する用です。
もし間違いがあったら教えて下さい。
2016年2月7日日曜日
2012年6月29日金曜日
wordpress アクションフック
An Introduction to WordPress Action Hooks
function.phpに追加する。
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"?>このXMLファイルを読み込む。
1 大阪太郎 2 京都越太朗 3 三重三郎
<html>外部XMLファイルの読み込み