2

ツールチップにJquery Cluetipを使用しています。ツールヒントのコンテンツは、Cluetip の AJAX 関数で読み込まれます。読み込まれたコンテンツでは、Javascript を使用してユーザビリティを高めたいと考えています。

index.html:

<img src="edit.png" title="Test" class="popup" rel="ajax-content.html">

onLoad.js:

$('.popup').cluetip({activation: 'click'});

ajax-content.html:

<script language="javascript" type="text/javascript">
    alert('Hello world!');
</script>
Test content.

その結果、クリックするとツール ヒントが表示され、タイトルは「テスト」、コンテンツは「テスト コンテンツ」となり、「 Hello world! 」というアラートは表示されません。'。FireBug では、スクリプト エラーもコンソール エラーも表示されません。

これについて何か助けはありますか?


編集:

私はそれを考え出した。

Cluetip には、ajax の処理に関するデフォルトのアクションがあります。

ajaxProcess: function(data) {
    data = data.replace(/<(script|style|title)[^<]+<\/(script|style|title)>/gm, '').replace(/<(link|meta)[^>]+>/g,'');
    return data;
}

したがって、修正は次のとおりです。

$('.popup').cluetip({
    activation: 'click'.
    ajaxProcess: function(data) {
        return data;
    }
});

おそらくバグを防ぐために、Cluetip がすべてのスクリプト/スタイル/タイトルを削除する理由はわかりません。

4

1 に答える 1

1

通常、スクリプトは jquery の ajax フェッチによって読み込まれません。通常、これは $.getScript() を使用するか、スクリプト要素を見つけて自分でスクリプトをロードすることによって、自分で行う必要があります。

私は、cluetip がその rel 読み込み機能を介してこれを行わないことを前提としています。また、これは一般的には良い考えではありません。なぜこれをやろうとしているのでしょうか?

于 2012-02-14T18:51:13.260 に答える