Текстовый файл в Iframe
В атрибуте src ifame формируется имя обычного текстового файла и он открывается.
Можно ли каким-то образом задать для этого iframe размер шрифта для открываемого файлика? Теоретически понятно, что можно получить содержание фрейма и JS добавить к тексту всё чо надо. На практике нихрена не получается... Спасибо за советы. |
Цитата:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<!--
<script src='https://code.jquery.com/jquery-latest.js'></script>
-->
<style type='text/css'>
</style>
<script type='text/javascript'>
window.onload=function() {
var o=document.getElementById('test');
o=o.contentDocument;
o.body.style.color='red';
}
</script>
</head>
<body>
<iframe src='tmp1.csp' id='test'></iframe>
</body>
</html>
Вот есть еще варианты... https://only-to-top.ru/blog/coding/2...to-iframe.html |
Если Iframe загружается из другого источника, то ничего особо сделать нельзя.
Да и из своего тоже можно только добираться то DOM фрейма и уже его изменять. |
Спасибо, ksa!
Да, конечно, всё с одного домена. Но, простите, если я не прав, но вроде бы window,onload срабатывает при загрузке всего родительского документа. А тут адрес открываемого в ifame документа формируется в js. <iframe id="showText" frameborder="no" seamless width="100%" height="85%" style="font-size:20px;" src=""></iframe>
document.getElementById('showText').src = 'text/'+idx+'.txt';
И в открываемом во фрейме файлике нет html заголовка - это простой текстовый файл *.txt |
Все у него будет. И html и body
Проверил на таком примере
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8" lang="ru">
<meta name="viewport" content="width=device-width, initial-scale=1.0" >
<title>TEST IFRAME </title>
<script>
document.addEventListener('DOMContentLoaded', () => {
let ifr = document.getElementById('showtext');
ifr.addEventListener ('load', () => {
let difr = ifr.contentDocument;
difr.body.style.color = 'red';
difr.body.style.fontSize = '200%';
})
ifr.src = 'ifr.txt'
})
</script>
</head>
<body>
<iframe id=showtext ></iframe>
<script>
</script>
</body>
</html>
Все работает. Но только, если грузить с сервера, а не локально. ЗЫ Текстовый файл должен быть в utf-8. Такую кодировку браузер ставит по умолчанию. Иначе кракозябы вместо не латнских символов. |
Цитата:
|
Цитата:
Цитата:
|
voraa, ksa, спасибо!
|
| Часовой пояс GMT +3, время: 07:42. |