裏アドだらけの人生

読んでおもしろい内容はほとんどない個人的な備忘録です

jQueryのloadでセレクタ指定した時のscript

2013-06-18 15:30:33 | jQuery
検証不足だけどとりあえずメモ。
例えばloadで読み込むHTMLに
<script type="text/javascript" src="hogehoge.js"></script>
<script type="text/javascript">
$(function() {
	hogehoge();
});
</script>
みたいなの(hogehoge.js内でhogehoge関数を定義)が書いてあったとして、
セレクタを指定せずにファイルまるごとloadした時はhogehoge()が実行される(と思う)。
しかしどうもこれがセレクタを指定してHTMLの一部をloadした場合には無視されるっぽい。
$('#container').load('hogehoge.html #content');
こんな感じのやつ。
#contentの中にscriptが書いてあっても実行されない。
で、とりあえず回避策。
$('#container').load('hogehoge.html #content', function() {
	$.getScript('hogehoge.js', function() {
		hogehoge();
	});
});
たまたまload先の一部のファイルだけscriptが実行されなくて、どうしてだろうって小1時間悩んだ結果、たぶんそういうことなんだろなって結論に達した次第。
ちゃんと調べてないんで間違ってたらすみません。

1 コメント

コメント日が  古い順  |   新しい順
はじめまして、初コメントです! (めぐみ)
2013-07-02 01:03:21
はじめまして!めぐみっていいます、他人のブログにいきなりコメントするの始めてで緊張していまっす(o^∇^o)ノ。ちょくちょく見にきてるのでまたコメントしにきますね(*゜ー゜*)ポッ
返信する

コメントを投稿