ширина Vimeo на Tumblr - PullRequest
       36

ширина Vimeo на Tumblr

0 голосов
/ 24 января 2011

Знай, проблема tumblr ограничивает ширину видео до max500, я хочу их 700. Я перепробовал все перечисленные хаки и скрипты, они не будут работать на моей теме .Какие-либо предложения?

Ответы [ 2 ]

2 голосов
/ 14 февраля 2011

Этот код был полезной отправной точкой, но он также не изменил размер тега embed, что означает, что он не будет работать для всех браузеров.

<script type="text/javascript">
    $(document).ready(function() {
          var embedTag;
          $('.video').each(function(index) {
               $( this ).contents().each( function ( index ) {
                    if ($(this).is('object') || $(this).is('embed') || $(this).is('iframe')) {
                         var orgWidth = $(this).attr('width');
                         var orgHeight = $(this).attr('height');
                         var scale = orgHeight/orgWidth;
                         var targetWidth = 474;
                         var targetHeight = targetWidth * scale;
                         $(this).attr('width', targetWidth);
                         $(this).attr('height', targetHeight);
                         $(this).find('embed').attr('width', targetWidth);
                         $(this).find('embed').attr('height', targetHeight);
                    }
               });
          });
     });
    </script>

РЕДАКТИРОВАТЬ: дальнейшая редакция, на случай, если ваши видео / мультимедиа, все, что встроено в другие элементы:

<script type="text/javascript">
    $(document).ready(function() {
          var embedTag;
          $('.video, .media').each(function(index) {
               $( this ).find('object, embed, iframe').each( function ( index ) {
                    var orgWidth = $(this).attr('width');
                    var orgHeight = $(this).attr('height');
                    var scale = orgHeight/orgWidth;
                    var targetWidth = 474;
                    var targetHeight = targetWidth * scale;
                    $(this).attr('width', targetWidth);
                    $(this).attr('height', targetHeight);
                    $(this).find('embed').attr('width', targetWidth);
                    $(this).find('embed').attr('height', targetHeight);
               });
          });
     });
    </script>
0 голосов
/ 25 января 2011

Мне пришлось сделать то же самое с темой, которую я разработал / разработал для моего Tumblr (ridiculouslyawesome.com).Чтобы обойти максимальную ширину 500 пикселей, которую, похоже, накладывает Tumblr, я придумал небольшой хак для JavaScript, который находит все теги object / embed / iframe на странице и корректно изменяет их размер для темы.В этом примере используется jQuery, но вы можете изменить его на любой JS-фреймворк, который вы предпочитаете использовать.

$(document).ready(function() {
      var embedTag;
      $('div.video_container').each(function(index) {
           $( this ).contents().each( function ( index ) {
                if ($(this).is('object') || $(this).is('embed') || $(this).is('iframe')) {
                     var orgWidth = $(this).attr('width');
                     var orgHeight = $(this).attr('height');
                     var scale = orgHeight/orgWidth;
                     var targetWidth = 960;
                     var targetHeight = targetWidth * scale;
                     $(this).attr('width', targetWidth);
                     $(this).attr('height', targetHeight);
                }
           });
      });
 });

До сих пор это работало довольно хорошо для моей темы во всех браузерах, на которых я ее тестировал.Надеюсь, это будет работать и для вас.Дайте мне знать, если у вас возникнут какие-либо проблемы с ним.

Райан

...