ユーザーが閲覧中のページから画像を収集する独自のブラウザのブックマークツールバーに追加するブックマークレットがあります。
ユーザーが任意のサイトをクリックするたびにログを記録し、データを mysql テーブルに保存したいと考えています。だから私は ajax 呼び出しを使用して、送信されたデータを処理する php ファイルに投稿しています。
ただし、これは機能する場合と機能しない場合があります。つまり、一部のサイトでは機能し、他のサイトでは機能しません。
私がしようとしているのはこれです:
(function()
{ // declare variables e.g. div.ids, div content etc then display it
......
//log the click
var dataString = '&url=' + encodeURIComponent(window.location.href) + '&page_title=' + encodeURIComponent(document.title);
$.ajax({
type: "POST", // form method
url: "http://myurl.com/includes/log_clicks.php",// destination
data: dataString,
cache: false
});
//END log the click
})();
それが機能せず、Firebug を使用して理由を調べると、エラーが発生することがあります。TypeError: $ is undefined $.ajax({
時々それはまだphpファイルに投稿しますが、データはありません
ユーザーのブラウザーの js ファイル内から ajax を呼び出すより良い方法はありますか?
提案に従って、変数の1つを次のように修正するだけでjqueryをロードしようとしました:
div.innerHTML = '<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script><div class=....';
しかし、それは違いはありませんでした