home ホーム search 検索 -  login ログイン  | reload edit datainfo version cmd icon diff delete  | help ヘルプ

日記/2009/03/01/jQueryのattrメソッドでonClickを設定しようとしたけどIE7で無理でした。

日記/2009/03/01/jQueryのattrメソッドでonClickを設定しようとしたけどIE7で無理でした。

日記 / 2009 / 03 / 01 / jQueryのattrメソッドでonClickを設定しようとしたけどIE7で無理でした。
id: 192 所有者: msakamoto-sf    作成日: 2009-03-01 00:18:37
カテゴリ: JavaScript 

jQueryの1.2.6/1.3.2 で試したんですが、 JavaScript/PageNavi(2)を作っていた時に、<a>タグのonClickを動的に設定しようとして

$('#abc').attr('onclick', 'window.alert(123);');

とかしてみたんです。

Firefox2とOpera9では動いてくれたんですが、IE7で動きませんでした。jQueryのコードは追ってないので簡単な「できなかったよ」報告になってしまいますが、やっぱり素直に

$('#abc').click(function(event) { window.alert(123); });

としないと駄目ッスね。

そもそも何でそんな変なことしようとしたのかというと、onClick時にJsPrevNextPagerのclicknext()を呼びたいのですが、JsPrevNextPager()に渡すIDをどうやって指定しようかということで、ものは試しに 'onClick' 属性に文字列でJavaScriptを指定して、そこで動的にIDを埋め込もうとしたわけです。
イメージ的にはこんな感じにしようとしてました。

$('#' + this.id_next + ' a').attr('onClick', 'JsPrevNextPager(' + this.id + ').clicknext();');

Firefox/Operaで動いて「ヤッター」と喜んだのも束の間、IE7で玉砕し、動くコードに辿り着くまで実に5時間もかかってしまいました。スコープ絡みで色々つっかかりました。今時駄目すぎですが、とりあえず以上。


プレーンテキスト形式でダウンロード
現在のバージョン : 1
更新者: msakamoto-sf
更新日: 2009-03-01 00:26:50
md5:bae136ca2e01f0e4498fa94981af4e70
sha1:1e5d3cfbf5179a77f95f7d5e07c84729a39d49f0
コメント
コメントを投稿するにはログインして下さい。