jqueryを使用して内部からiframeをスクロールするにはどうすればよいですか?
-
30-09-2019 - |
質問
iframeを生成するShadowboxを使用して、ページに製品の詳細を表示しています。詳細ページはかなり長くなる可能性があるため、クライアントはページを下にスクロールする「詳細」ボタンが必要です(明らかに、iframeの右側にある巻物が十分ではありません)。
iframeをスクロールするために試したコードは次のとおりです。
$(document).ready(function()
{
$(".moreButton img").click(function() {
scrollbottom();
});
});
function scrollbottom() {
var x = 250; // this number is a temporary placeholder
var t = 500;
$("iframe").animate({ scrollTop: x }, t);
}
また、iframeの代わりにボディを使用しようとしましたが、役に立ちませんでした。何か案は?ありがとう!
解決 2
これはうまくいきました:
$('html,body').animate({ scrollTop: x }, t);
他のヒント
このように:(テスト)
$("iframe").contents().children().animate({ scrollTop: x }, t);
Chromeでは、ボディ要素を具体的に選択する必要がありました。
$('#my-iframe').contents().find('body').animate({scrollTop:90},500);
このような親JavaScriptに関数を作成します。
function scrollToPoint(top) {
$("html, body").animate({ scrollTop: top }, "slow")
}
そして、このようにiframe内でその関数を呼び出します:
window.parent.scrollToPoint(top);
まだFirefoxでテストされていないChromeで動作するはずです
所属していません StackOverflow