У меня есть страница с основной таблицей стилей, хранящейся в папке css. Внутри той же страницы у меня несколько фреймов (размещенных в другой папке, но в том же домене), и я хочу, чтобы они использовали тот же CSS, что и их родитель. Пожалуйста, посоветуйте, я вообще новичок в JS.

Я пробовал следующий код, и все работает отлично, единственная проблема в том, что у меня сейчас 15 фреймов, и, конечно же, к каждому из них он добавит 15-кратный код. Я не могу использовать идентификаторы внутри кода, иначе мне нужно будет настроить сценарий для каждого из них.

  <script type="text/javascript">
    $("iframe").on("load", function() {
      let head = $("iframe").contents().find("head");
      let css = '<link rel="stylesheet" href="../css/stylesheet.css">';
      $(head).append(css);
    });
  </script>
0
LuBu 23 Окт 2019 в 18:06

1 ответ

Лучший ответ

Вы всегда имеете в виду первый iFrame. Измените код, чтобы ссылаться на каждый iframe следующим образом:

<script type="text/javascript">
    $("iframe").on("load", function() {
      let head = $(this).contents().find("head");
      let css = '<link rel="stylesheet" href="../css/stylesheet.css">';
      head.append(css);
    });
  </script>
0
Nawed Khan 23 Окт 2019 в 18:12