Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Хаки Добавление class для всех iframe

Добавление class для всех iframe


     25.12.2012    Хаки    3602

вопрос
Имею киносайт, хочу что бы все iframe автоматом оформлялись как мне нужно, для этого необходимо что бы при добавлении новости к каждому iframe добавлялось "class="player""
Пример:
из
<iframe src="http://vk.com/video_ext.php?oid=-40682126&id=163247136&hash=798e4400ec551bbd&hd=1"  width="607" height="360" frameborder="0"></iframe>

Должно получатся
<iframe class="player" src="http://vk.com/video_ext.php?oid=-40682126&id=163247136&hash=798e4400ec551bbd&hd=1"  width="607" height="360" frameborder="0"></iframe>

понимаю что копать нужно здесь "/engine/classes/parse.class.php" но что-то не получается, dle 9.7...Заранее благодарен

Ответил: BR0kEN


Выводите iframe через доп. поля.

Или же добавляйте класс программно, на jQuery:
document.getElementsByTagName('iframe').addClass("player");
Для общего развития можно еще почитать статейку о поиске элементов в DOM: http://learn.javascript.ru/searching-elements-dom

Либо же используйте тип решения, предложенный вами. Для этого нужно в parse.class.php найти кусок строки:
iframe title="YouTube video player" 
и заменить на:
iframe title="YouTube video player" class="player"
далее найти:
iframe width="'.$width.'" height="'.$height.'"
и заменить на
iframe width="'.$width.'" height="'.$height.'" class="player"
После изменений в PHP файле нужно не забыть сделать перестроение публикаций.

Комментарии пользователей (10)

maggotische
4

55 | 63

maggotische - 26 декабря 2012 13:15 - Юзер

Спасибо, но вариант описанный вами работает только с ютубом и вимео плеерами, а мне нужно что бы ко всем iframe добавлялся клас

BR0kEN
163

235 | 275

BR0kEN - 26 декабря 2012 13:23 - Эксперт

Раз видео добавляется через доп. поле, то нужно делать так:
[xfgiven_имя]<iframe class="player" src="[xfvalue_имя]"></iframe>[/xfgiven_имя]
где xfvalue_имя - это ссылка на видео.

Либо же, если ранее уже были использованы вставки iframe такого типа:
<iframe src="http://vk.com/video_ext.php?oid=-40682126&id=163247136&hash=798e4400ec551bbd&hd=1"  width="607" height="360" frameborder="0"></iframe>
можно сделать так:
[xfgiven_имя]<div class="iframe">
      [xfvalue_имя]
</div>[/xfgiven_имя]
и потом задать нужные стили через CSS для самих фреймов. Например так:
.iframe iframe {
      // необходимые стили
}

maggotische
4

55 | 63

maggotische - 26 декабря 2012 13:32 - Юзер

Цитата: BR0kEN
[xfgiven_имя]<div class="iframe">
      [xfvalue_имя]
</div>[/xfgiven_имя]

Спасибо большое, вариант подошел, как то я сам не додумался :)

Lynat1k
1

373 | 93

Lynat1k - 7 января 2013 12:57 - Юзер

а мне не помогло!
код видео вставляю в полное описание материала
в итоге код такой
<div class="iframe">
      {full-story}
</div>

а в css
.iframe iframe {width:640px!important; height:480px!important;}

но почему то видео все равно не растягивается до нужного размера. в чем проблемаможет быть?

BR0kEN
163

235 | 275

BR0kEN - 7 января 2013 13:17 - Эксперт

Добавьте на jQuery одну строчку и не парьте себе и окружающим мозг.
$('.fullstory iframe').addClass('iframe');

Lynat1k
1

373 | 93

Lynat1k - 7 января 2013 13:37 - Юзер

а куда ее добаывить то?

Lynat1k
1

373 | 93

Lynat1k - 8 января 2013 12:02 - Юзер

ну подскажите же куда эту строчку впихнуть? я в ДЛе только 5 день копаюсь

BR0kEN
163

235 | 275

BR0kEN - 8 января 2013 15:06 - Эксперт

DLE тут не причем, это jQuery код. Добавлять его нужно в document ready подключаемого js файла.

Lynat1k
1

373 | 93

Lynat1k - 8 января 2013 15:23 - Юзер

ну так как раньше работал с укоз то с таким не сталкивался
что такое document ready и где его найти
пробовал просто впихнуть код в js и вывести в фулстрои - не прокатило

Lynat1k
1

373 | 93

Lynat1k - 9 января 2013 23:02 - Юзер

ну подскажите куда впихнуть код?

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы