2011-02-02 3 views
1

Я хотел бы включить iframe в свой блог. Проблема в том, что мой фон черный, а также цвет текста в iframe.Изменение цвета текста в Iframe

В любом случае я могу изменить цвет текста iframe без доступа к исходному контенту?

ответ

1
<html> 
<head> 
    <script type="text/javascript"> 
     function InitEditable() 
{ 

       var editor = document.getElementById ("editor"); 

      var editorDoc = editor.contentWindow.document;   
      var editorBody = editorDoc.body; 

       // turn off spellcheck 


      if (editorBody.contentEditable === undefined) { // Firefox earlier than version 3 
       if (editorDoc.designMode !== undefined) { 
         // turn on designMode 
        editorDoc.designMode = "on";     
       } 
      } 
      else { 
        // allow contentEditable 
       editorBody.contentEditable = true; 
      } 

     } 





     function ToggleBold() 
    { 
      editorDoc.execCommand ('bold', false, null); 
     } 
     function ToggleItalic() 
    { 
      editorDoc.execCommand ('italic', false, null); 
     } 
     function SetRed() { 
     //sets foreground color 
      editorDoc.execCommand ('foreColor', false, "#ff0000"); 
     } 
     function Delete() { 
      editorDoc.execCommand ('delete', false, null); 
     } 
    </script> 
</head> 
<body onload="InitEditable();"> 
    First, write and select some text in the editor. 
    <br /> 
    <iframe id="editor" src="F:\EXAMPLE\JAVA\FILE\SURESHMNG.txt"></iframe> 
    <input type="textarea" id="ta"></textarea> 
    <br /><br /> 
    You can use the following buttons to change the appearance of the selected text: 
    <br /><br /> 
    <button onclick="ToggleBold();">Bold</button> 
    <button onclick="ToggleItalic();">Italic</button> 
    <button onclick="SetRed();">Set to red</button> 
    <button onclick="Delete();">Delete</button> 
</body> 
</html> 
0

Короткий ответ: Нет, если у вас нет контроля над исходной страницей, вы не можете управлять стилем.

Невозможно использовать только CSS. Вы должны иметь контроль над содержимым iframe, чтобы его стиль. Существуют методы, использующие javascript или ваш веб-язык выбора для динамического встраивания некоторых необходимых стилей, но вам нужен прямой контроль над содержимым iframe.

Предполагая, что страница живет на том же сервере, что и в вашем блоге, вы можете управлять стилем с помощью jQuery, например, для динамического стиля страницы. Однако javascript (и, следовательно, jQuery) подчиняется same origin policy, что делает невозможным манипулирование содержимым iframe, если источник iframe не является тем же доменом, что и тот, на котором вы его показываете.

Если ваша страница-источник живет на внешнем сервере, альтернативой может быть создание собственного «виджета» PHP, который может загрузить внешнюю веб-страницу и использовать file_get_contents, а затем загрузить это как iframe или с помощью jQuery.load, при котором пока этот скрипт/виджет существует в том же домене, что и ваш блог, вы сможете создавать и контролировать содержимое этой страницы в своем сердце.

Смежные вопросы