1

タイトルがわかりにくい場合は申し訳ありませんが、ほぼ正しいと思います。NEhow、私がやりたいのは、JQuery(pref)、PHP、CSSを使用してウィジェットを構築するのと少し似ています(ある程度はそうです)。

私が本当に望んでいるのは、私のサイトの「メンバー」が2行のコードをHTMLに貼り付けて、ウィジェットをロードすることです。このようなもの:

<script type="text/javascript" src="http://www.mydomain.com/script.js"></script>

次に、ウィジェットを次のように表示します<div id="displaywidget"></div>

OK、そのビットは「簡単」でOKです。しかし、script.jsでウィジェットを生成するためにJQueryまたは「何か」を含めるにはどうすればよいですか?

つまり、「displaywidget」です。ウィジェットdivのIDは、サーバー上のphpファイルの名前になるため、基本的にscript.jsはdisplaywidget.phpをdivdisplaywidgetにロードする必要があります。

document.getElementById('displaywidget')はdivを取得するために使用していると思いますが、div内でdisplaywidget.phpを「書き込み/挿入/ロード」するにはどうすればよいですか?

私が「純粋な」javaを書くとき、私が望むことのほとんどを実行できると考えています。つまりdocument.getElementById('displaywidget')、ウィジェットのいくつかの側面でJQueryを使用したいので、Jquery.jsも「含める」ことをお勧めします。例はJQueryUI日付関数です。 。

少しとりとめのないことを申し訳ありませんが、私が進むにつれて考えようとしています。私の「本当の」問題は、「純粋な」JavaScript、つまりdivにdisplaywidget.phpを表示/ロードする方法がよくわからないことです。

提案をお願いします。(ああ、間違った木を吠えている場合は、遠慮なく教えてください-うまく:))

前もって感謝します

4

3 に答える 3

0

もう少し「トロール&思考」した後、私はこのコードを見つけました:

(function() {
// Localize jQuery variable
var jQuery;
/******** Load jQuery if not present *********/
if (window.jQuery === undefined || window.jQuery.fn.jquery !== '1.4.2') {
var script_tag = document.createElement('script');
script_tag.setAttribute("type","text/javascript");
script_tag.setAttribute("src","http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js");
script_tag.onload = scriptLoadHandler;
script_tag.onreadystatechange = function () { // Same thing but for IE
if (this.readyState == 'complete' || this.readyState == 'loaded') {
scriptLoadHandler();
}
};
// Try to find the head, otherwise default to the documentElement
(document.getElementsByTagName("head")[0] || document.documentElement).appendChild(script_tag);
} else {
// The jQuery version on the window is the one we want to use
jQuery = window.jQuery;
main();
}
/******** Called once jQuery has loaded ******/
function scriptLoadHandler() {
// Restore $ and window.jQuery to their previous values and store the
// new jQuery in our local jQuery variable
jQuery = window.jQuery.noConflict(true);
// Call our main function
main(); 
}
/******** Our main function ********/
function main() { 
jQuery(document).ready(function($) { 
******* Load CSS *******/
var css_link = $("<link>", { 
rel: "stylesheet", 
type: "text/css", 
href: "style.css" 
});
css_link.appendTo('head');          

/******* Load HTML *******/
var jsonp_url = "http://al.smeuh.org/cgi-bin/webwidget_tutorial.py?callback=?";
$.getJSON(jsonp_url, function(data) {
$('#example-widget-container').html("This data comes from another server: " + data.html);
});
});
}
})(); // We call our anonymous function immediately

Alex Marandonによって書かれ、ここにありますhttp://alexmarandon.com/articles/web_widget_jquery/-.jsファイルへのJQueryのインストールを含め、私が望んでいたものとまったく同じように機能します

于 2010-11-28T09:48:44.467 に答える
0

document.getElementById('displaywidget')を使用してdivを取得すると思いますが、div内でdisplaywidget.phpを「書き込み/挿入/ロード」するにはどうすればよいですか?

phpページを呼び出してデータをdivにプッシュするjQuery内のAJAX動作を探しています。

プロセスの早い段階で、head要素のすぐ前にjQueryをロードする必要があります。ロードされるとキャッシュされるので、すべてのページで心配する必要はありません。実際のオーバーヘッドは発生しません。

jQueryをインストールすると、データとポピュレーション要素の取得に関連する多くのAJAX関数の1つを呼び出すことができます。$ .load()、$。ajax()、および私が行ってドキュメントセクションをチェックしない限り私を逃れる他のいくつかがあります。

これらはすべてjQueryなしで実行できますが、コードが多くなり、ブラウザーの違いを制御する必要があります。

于 2010-11-28T07:58:07.017 に答える
0

jqueryをscript.jsにロードし、script.jsに存在するjavascriptの前後にコピーして貼り付けることができます。

したがって、script.jsが次の場合:

//start of file
alert('ex');
//end of file

成功する:

//start of file
alert('ex')
Copy and pasted Jquery source
//end of file
于 2010-11-28T09:16:46.273 に答える