IFrame Piaskownica to technika, która pomaga chronić przed zawartości zewnętrznej tworząc mylące wyskakujące okienka, które wydają się pochodzić z głównej strony internetowej. Aby zezwolić na wyskakujące powiadomienia, musisz znaleźć znacznik iframe i zmodyfikować atrybut piaskownicy tak, aby zawierał wartość dozwolonych modów. Dla JSFiddle jest to element iframe o nazwie "result". Będziesz musiał ponownie uruchomić (ctrl-enter) swój Fiddle po modyfikacji tagu.
Korzystanie z przeglądarki Narzędzia programistów lub coś w stylu Grease Monkey/Tamper Monkey zmieniają element iframe.
Z tego:
<iframe name="result" sandbox="allow-forms allow-popups allow-scripts allow-same-origin" frameborder="0">
Do tego:
<iframe name="result" sandbox="allow-modals allow-forms allow-popups allow-scripts allow-same-origin" frameborder="0">
Poniższy fragment TamperMonkey wydaje rade ładnie:
// ==UserScript==
// @name Enable alert()s
// @match //jsfiddle.com/*
// @require http://code.jquery.com/jquery-latest.min.js
// @grant unsafeWindow
// ==/UserScript==
this.$ = this.jQuery = jQuery.noConflict(true);
$("iframe[name='result']").each(function() {
this.sandbox += ' allow-modals';
});
To jest atrybut sandbox iframe. –
@ DanielA.White Ahh - Rozumiem! Właśnie dodałem 'allow-modals' przez Dev Tools i zadziałało! Możesz to dodać jako odpowiedź :) Ale przysięgam, że to już działa - czy to nowa zmiana, którą zrobił JSFiddle? Czy istnieje sposób, aby to naprawić bez ręcznej edycji za każdym razem/bez konieczności tworzenia usercript lub podobnego do tego zrobić? –
@WouterHuysentruit yeah - problem leży w najnowszych wersjach Chrome, jak mówi odpowiedź Dana, 46+ :( –