xugj_already_jsを少し改良しました


投稿ツリー


前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 | 投稿日時 2012/1/25 7:16
domifara 

ローカルjqueryを使う場合
xugj_already_jsを少し改良しました

http://xodomifara.lolipop.jp/karidown/xugj_already_js.zip

今まで、xugj_jquery_is_already判定で、jquery.jsの名前を判定していましたが、

ckeditorのjquery用アダプターも、jquery.jsという名前のため
ckeditorをjquery対応設定のため上記アダプターを読み込み指定すると、
テンプレートで

1
2
3
<{if ! $xcl22_jquery_is_already and ! $xugj_jquery_is_already}>
<script type="text/javascript" src="<{$xoops_imageurl}>js/jquery.js"></script>
<{/if}>

の判定処理ではねられて
肝心の本体のjquery.jsがローカル指定のとき起動できませんでした。

これまで、無視していたのですが
domifara版myckeditor ver1.00から
XCL2.2の場合、上記アダプターも読み込むようにしたので
私のローカルでのテストするときにも、
困る様になってきたので
少し無駄な判定になるかもですが、下記の様に、
上記アダプターは例外として除外判定を追加しました。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
function xugj_jquery_is_already($document)
{
	$ret = false;
	if (preg_match('/(www\.google\.com\/jsapi|jquery([0-9\.-]+?)\.js|jquery([0-9\.-]+?)\.min\.js)/isx',$document)) {
		if (!preg_match('/(ckeditor\/adapters\/jquery\.js)/isx',$document)) {
			$ret = true;
		}
	}
	return $ret;
}

そのうち、お試しください。

前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2012/1/25 7:55
domifara 

訂正、正規表現あってるかな?

1
2
3
4
5
6
7
8
function xugj_jquery_is_already($document)
{
	$ret = false;
	if (preg_match('/(www\.google\.com\/jsapi|jquery([0-9\.-]+?)\.min\.js)/isx',$document) || preg_match('/[^(ckeditor\/adapters\/)](jquery\.js)/isx',$document)) {
		$ret = true;
	}
	return $ret;
}
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2012/1/25 8:57
marine  管理人   投稿数: 410

domifaraさん、いつもありがとうございます。
時間をみて、試してみたいと思います。

しかし、正規表現って難しいですよねぇ~(-.-)

あと・・・手前味噌ながら、やっぱり Syntax-Highlighterは見やすいなぁ~(^^ゞ

このトピックに投稿する

題名
ゲスト名
投稿本文
  条件検索へ