私はshopifyサイトで、fancyboxを介してフォームをインストールする作業を行っていますが、Cookieを使用して最初の訪問時にのみ表示します。ページの読み込み時にfancyboxを表示するのに問題がありますが、fancyboxコードを取り出すと、フォームがページにインラインで読み込まれます。これにより、fancyboxの呼び出しで何か問題が発生しているのではないかと疑われます。また、クッキーが正常に機能していないと思います。私はFirebugを通してそれらを見ません。
これが私のindex.liquidの一番下にあるコードです
<script type="text/javascript">
jQuery(document.ready(function() {
if ($.cookie('rrp8')) {
// it hasn't been 120 days yet
} else {
$.fancybox(
'<div id="home-pop"><p style="text-align: left;">Sign up here for updates on new classes, future dates & more</p><form action="https://www.salesforce.com/servlet/servlet.WebToLead?encoding=UTF-8" method="POST"><input type="hidden" name="oid" value="00DU0000000J1yb" /><input type=hidden name="oid" value="00DU0000000J1yb"><input type=hidden name="retURL" value="http://cdn.shopify.com/s/files/1/0149/4308/files/pop-up-thanks.png?76"><input type=hidden name="LeadSource" value="Training Store"><div><table><tbody><tr><td><label for="first_name">First Name:</label><br><input id="first_name" type="text" name="first_name" size="26" maxlength="40" /> <br></td></tr><tr><td><label for="last_name">Last Name:</label><br><input id="last_name" type="text" name="first_name" size="26" maxlength="40" /> <br></td></tr><tr><td><label for="email">Email:</label><br><input id="sf_email" maxlength="80" name="email" size="26" type="text" /><br></td></tr><tr><td><label for="company">Company:</label><br><input id="company" maxlength="40" name="company" size="26" type="text" /><br></td></tr><tr><td><input type="submit" name="submit" value="Submit"></td></tr></tbody></table></div></form></div>',
{
'autoDimensions' : true,
'width' : 570,
'height' : 530,
'transitionIn' : 'fade',
'transitionOut' : 'fade'
}
);
}
});
// set cookie to expire in 120 days
$.cookie('rrp8', 'true', { expires: 120});
</script>
そしてこれがtheme.liquidのコードです
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js" type="text/javascript"></script>
{{ 'jquery.mousewheel-3.0.4.pack.js' | asset_url | script_tag }}
{{ 'jquery.fancybox-1.3.4.pack.js' | asset_url | script_tag }}
{{ 'jquery.cookie.js' | asset_url | script_tag }}
{{ 'jquery.fancybox-1.3.4.css' | asset_url | stylesheet_tag }}
これをshopifyフォーラムに投稿しましたが、まだ返信がありません。誰かが助けてくれることを願っています。
更新 次の「簡略化された」コードをプレーンなhtmlファイルに追加すると、fancyboxが機能します。Shopifyに追加しても何も表示されません。私のエラーはshopifyのどこかにあると思いますが、どこにあるのかわかりません。$(function(){var myContent ='新しいクラス、将来の日付などの更新については、ここでサインアップしてください
名:姓:
電子メール:
会社:
';
$.fancybox(myContent,
{
'autoDimensions' : true,
'width' : 570,
'height' : 530,
'transitionIn' : 'fade',
'transitionOut' : 'fade'
}
);
});
</script>
</head>
<body>
</body>
</html>