1
私はブロガーだと私は私のウェブサイト上のウィジェットをアップロードしようとしていますのために動作しません、私は私の知る限りコンセプト私を理解してhereJavaScriptのウィジェットは私のウェブサイト
からウィジェットのコードを撮影しただけで私のHTMLにコードをコピー/ペーストする必要があります。残念ながら、それはこのように動作しません。
私はサイトの一部のコードと矛盾しているので、空のHTMLファイルでテストしましたが、うまくいきません。
私はコードをスニペットに入れて、誰かがそれを見ることができればいいと思うので、どこに問題があるのか分かります。
HTTPSを使用するようにscr["src"]
のURL値を設定
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>momondo flight widget</title>
</head>
<body>
<div id="mmd-flight-widget"></div>
<script type="text/javascript">(function initWidget() {
\t var options = { \t
\t \t layout: { \t
\t \t \t theme: "momondo"
\t \t \t , width: "300" \t
\t \t \t , height: "250" \t
\t \t }, \t \t \t \t \t
\t \t airports: { \t \t \t
\t \t \t origin: "LON", \t
\t \t \t destination: "PAR" \t
\t \t }, \t \t \t \t \t
\t \t settings: { \t \t \t
\t \t \t openNewWindow: true, \t
\t \t \t domain: "www.momondo.com", \t \t
\t \t \t source: "" \t \t \t
\t \t } \t \t \t \t \t \t \t \t
\t }; \t \t \t \t \t \t \t \t \t
\t var settings = options.settings; \t
\t var airports = options.airports; \t
\t var layout = options.layout; \t \t
\t var encoding = null; \t \t \t \t
\t onWidgetLoad = function (f) \t \t \t
\t { \t \t \t \t \t \t \t \t \t
\t \t f("mmd-flight-widget", { \t \t
\t \t \t searchForms: [{ \t \t \t \t
\t \t \t \t type: 1, \t \t \t \t
\t \t \t \t searchURL: "http://[DOMAIN][PATH][QUERY]" + (!!settings.source ? "&source=" + settings.source : ""), \t
\t \t \t \t openNewWindow: settings.openNewWindow, \t \t \t \t
\t \t \t \t currency: settings.currency, \t \t \t \t \t \t
\t \t \t \t segments: [ \t \t \t \t \t \t \t \t \t \t \t
\t \t \t \t \t { \t \t \t \t \t \t \t \t \t \t \t \t
\t \t \t \t \t \t airports: [ \t \t \t \t \t \t \t \t \t
\t \t \t \t \t \t \t { code: airports.origin || "" }, \t \t
\t \t \t \t \t \t \t { code: airports.destination || "" } \t
\t \t \t \t \t \t ] \t \t \t \t \t \t \t \t \t \t \t
\t \t \t \t \t }, \t \t \t \t \t \t \t \t \t \t \t \t
\t \t \t \t \t { \t \t \t \t \t \t \t \t \t \t \t \t
\t \t \t \t \t \t airports: [ \t \t \t \t \t \t \t \t \t
\t \t \t \t \t \t \t { code: airports.destination || "" }, \t
\t \t \t \t \t \t \t { code: airports.origin || "" } \t \t \t
\t \t \t \t \t \t ] \t
\t \t \t \t \t } \t \t
\t \t \t \t ] \t \t \t
\t \t \t }] \t \t \t \t
\t \t }); \t \t \t \t \t
\t }; \t \t \t \t \t \t
\t var scr = document.createElement("script");
\t scr["src"] = "http://" + settings.domain + "/widget/searchform/v1.0/?dimensions=" + (layout.width && layout.height ? (layout.width + "x" + layout.height) : "generic") + "&types=1&callback=onWidgetLoad&theme=" + layout.theme; \t
\t var tag = document.getElementsByTagName("head"); \t
\t if (tag && tag.length) \t \t
\t { \t \t \t \t \t \t \t
\t \t tag = tag[0]; \t \t \t
\t \t tag.appendChild(scr); \t
\t } \t \t \t \t \t \t \t
})();
</script>
</body>
</html>
ナッシングだ、私はスニペットを実行しようとするときに発生。それが効いていると確信していますか? –
私が提供したフィドルをチェックしましたか?できます。 S/Oスニペットでは機能しません...私は自分の答えに1つ追加してみましたが、あなたと同じ問題がありました。私はそれがS/O上の何らかのサンドボックス効果と関係していると思います。なぜなら、コードは私が提供したフィドルでうまく動作するからです。 – trevor
ありがとう、@trevor、これはそれを動作させた。なぜそれがhttpで動作しないのか知っていますか?https – user1866925