ich auf Chrome mit einem iframe ein ähnliches Problem hatte eine jQuery UI Registerkarte eingebettet in. Wenn die Registerkarte mit dem Iframe zum ersten Mal angezeigt wird, wird die Bildlaufleiste angezeigt. Aber wenn ich zu einem anderen Tab und zurück zum Tab mit dem Iframe wechsle, verschwindet die Bildlaufleiste. Alle hier vorgeschlagenen Lösungen funktionierten nicht für mich. Hier ist, was ich das Problem zu beheben tat: Zunächst erstelle ich die Tabs:
$("#mytabs").tabs();
Dann habe ich eine Funktion für das Ereignis „tabsactivate“ binden und ich überprüfen, ob das Ziel auf das Register ein mit dem Iframe . Wenn es der Fall, dass ich eine Funktion fixChromeScrollBar() aufrufen später beschrieben:
$("#mytabs").on("tabsactivate", function(event, ui) {
if ($(event.originalEvent.target).attr("href") == "#mytab-with-iframe") {
fixChromeScrollBar();
}
});
Und schließlich ist hier die Funktion fixChromeScrollBar(), die den Überlauf-Stil-Attribut des iframe Körper setzt (wie schon gesagt) entweder auf " scrollen "oder" auto ". Mir ist aufgefallen, dass wenn ich nur den "auto" oder "scroll" Wert definiere, wenn ich zu einem anderen Tab und zurück zum iframe wechsle, die Scrollbalken verliere. Die einzige Möglichkeit, sie beizubehalten, besteht darin, bei jedem Erscheinen des Iframes zwischen den beiden Werten zu wechseln. Es ist seltsam, aber es funktioniert:
function fixChromeScrollBar() {
var iFrameBody = $("#myiframe").contents().find("body");
var originalOverflow = $(iFrameBody).css("overflow");
if (originalOverflow == "visible" || originalOverflow == "auto") {
$(iFrameBody).css("overflow", "scroll");
} else {
$(iFrameBody).css("overflow", "auto");
}
}
Sie feststellen können, dass diese Methode nur aufgerufen, wenn Sie auf die Registerkarte wechseln die iframe enthält, so dass, wenn Sie mehrere Male auf dieser Registerkarte klicken, ohne diesen Code auf eine andere Schalt wird nur beim ersten Mal ausgeführt werden.
Es scheint, dass Fehler mit Chrome erschienen 52.0.2743.82: http://googlechromereleases.blogspot.fr/2016/07/stable-channel-update.html – lepix