#javascript #html #css #facebook #iframe
Вопрос:
Есть ли какая-либо ошибка в коде ? или как я должен получить желаемый результат ?
Моя цель состоит в том, чтобы сделать это
document.getElementById('iframe1').contentWindow.document.getElementsByTagName("IMG").style = "filter:invert(100%);";
Весь код приведен ниже
<iframe onload="frameload()" lazy="true" sandbox="allow-same-origin allow-scripts block-popups allow-forms" class='viewport-iframe' id='iframe1' src="https://www.facebook.com/plugins/page.php?href=https://www.facebook.com/Troll.Malayalam/posts/amp;tabs=timelineamp;width=340amp;height=500amp;small_header=trueamp;adapt_container_width=trueamp;colorscheme=amp;hide_cover=falseamp;show_facepile=falseamp;appId" scrolling="no" frameborder="0" allowfullscreen="true" allow="autoplay; clipboard-write; encrypted-media; picture-in-picture; web-share" frameborder="0" allowFullScreen="true" webkitallowfullscreen="true" mozallowfullscreen="true"></iframe>
<script type="text/javascript">
function frameload(){
alert(document.getElementById('iframe1'));
alert(document.getElementById('iframe1').getElementsByTagName("img"));
}
</script>
Комментарии:
1. Если вы хотите использовать
document.getElementById('iframe1').contentWindow.document.getElementsByTagName("IMG")
, то зачем вы звонитеdocument.getElementById('iframe1').getElementsByTagName("img")
?2. @VLAZ Я пробовал разные типы изменений в коде
3. @VLAZ, какой из них правильный ?
4. Вы НЕ МОЖЕТЕ войти в iframe, содержимое которого загружено из другого домена, с помощью сценариев с вашей страницы, это предотвращает та же политика происхождения.
5. @CBroe Есть ли способ сделать все изображения перевернутыми по цвету внутри IFRAME
Ответ №1:
Если вы успешно получаете iframe, измените свой код следующим образом. Добавьте свои атрибуты в тег iframe
<iframe onload="frameload()" id='iframe1'></iframe>
<script type="text/javascript">
function frameload(){
var tags = [...document.getElementById('iframe1').contentWindow.document.getElementsByTagName("img")];
tags.forEach((el)=>{el.style="filter:invert(100%);"});
}
</script>
Комментарии:
1. Но,братан, все равно изображение в Iframe не перевернуто
2. @SimpleGuy_ ! используйте следующее, работающее на меня
[...document.getElementById('iframe1').contentWindow.document.getElementsByTagName("img")]
3. Что толку в этих 3 точках (…)
4. теги var = [document.getElementById(‘iframe1’).contentWindow.document.getElementsByTagName(«img»)]; предупреждение(теги); Я не получаю никаких предупреждений, что означает нулевое значение,верно ?
5. @SimpleGuy_ ! 3 точки (…) называются оператором распространения. Извините, не могу объяснить здесь, погуглите