Подтвердить что ты не робот

YouTube потерял #t время начала поддержки в прямом URL и вставлять видео?

В последнее время можно использовать #t=2m0s или #t=120, чтобы установить время начала прямых ссылок:

http://www.youtube.com/watch?v=Fk2bUvrv-Uc#t=2m30s

а также для встраивания видео:

<iframe width="420" height="315" \
src="http://www.youtube.com/embed/Fk2bUvrv-Uc#t=2m30s" \
frameborder="0" allowfullscreen></iframe>

Теперь кажется, что YouTube отключил поддержку времени запуска #t, и выше не работает. Как я могу теперь ссылаться на видео с конкретным временем начала?

4b9b3361

Ответ 1

Вставить видео

Похоже, теперь используется другой параметр - start=<number of seconds> (см. этот блог и документация).

Пример:

<iframe width="420" height="315" frameborder="0" allowfullscreen
        src="http://www.youtube.com/embed/Nc9xq-TVyHI?start=110&end=119"></iframe>

Прямые ссылки

Для прямых ссылок достаточно просто заменить # на &:

http://www.youtube.com/watch?v=Fk2bUvrv-Uc&t=2m30s

Ответ 2

Вы можете использовать & t = вместо #t =

Ответ 3

YouTube отказался от поддержки времени начала загрузки. Теперь нам нужно, чтобы эфир напрямую использовал параметры start=N&end=M в секундах в соответствии с их новым API или написал дополнительный код, который превращает нашу старую нотацию #t=(n)m(n)s в новый API-совместимый стиль.

Ответ 4

Мне удалось заставить видеоклип работать на основе начала и конца, но точный код должен быть следующим:

?

начать = х & конец = у

где x - время начала в секундах и y - время окончания в секундах

если '?' нет, он не работает. Также код должен быть размещен непосредственно после URL без какого-либо пробела или не работает.

Ответ 5

У меня было большое количество видеороликов, которые обсуждались с помощью этого метода с помощью плагина JQuery. Я адаптировал плагин, чтобы продолжить использование нотации (n) m (n). Вы можете легко это изменить, чтобы получить значение #t из URL вместо атрибута data, в котором я его храню.

(function( $ ) {    
    $.fn.videoChapters = function(iframeID) {
        if(typeof window.orig_video === 'undefined') {
            window.orig_video = [];
        }
        window.orig_video[iframeID] = $('#'+iframeID).clone();

        var chapterContainer = this;
        $(this).find('a').on('click', function(e) {
                e.preventDefault();
                $('#'+iframeID).remove();
                $(chapterContainer).prevAll('.video-iframe').first().find('h3').after(window.orig_video[iframeID]);

                var video = $('#'+iframeID);
                if(typeof window.video_source === 'undefined') {
                    window.video_source = [];
                }

                if(typeof window.video_source[iframeID] === 'undefined') {
                    window.video_source[iframeID] = $(video).attr('src');
                }
                /*  to use it with a normal anchor change this to something like the below, of course it will vary for URL
                 *  so it'd be better to use a regex, but I'll let someone else worry about that.
                 *
                 *   var str = $(e.target).attr('href').split('#t')[1];
                 *   var nstr = $(str).split("s")[0];
                 *   var mstr = $(nstr).split("m");
                 *   var min = Number(mstr[0]);
                 *   var sec = Number(mstr[1]);
                 *   
                 * */

                var seconds = $(e.target).data('seconds');

                /* youtube dropped old min/secs format, now we convert what there to pure seconds */
                var splsec = seconds.split('m');
                var min = Number(splsec[0]);
                var sec = Number(splsec[1].split('s')[0]);

                min = min * 60;

                var total = min + sec; 

                var newSource = window.video_source[iframeID] + "?start="+total+"&autoplay=1&rel=0";
                $(video).attr('src', newSource);
        });

    };  
})( jQuery );

Ответ 6

Время начала и окончания использования кода вставки iframe не работает из моего теста. Для меня работает этот код:

From:

http://www.youtube.com/embed/[VIDEOID]

To:

http://www.youtube.com/v/[VIDEOID] & start = [SECONDS] & end = [SECONDS]

<object width="640" height="385">
<param name="movie" value="http://www.youtube.com/v/[VIDEOID]&start=100&end=500" />
<param name="allowscriptaccess" value="always" />
<embed src="http://www.youtube.com/v/[VIDEOID]&start=100&end=500" type="application/x-shockwave-flash" allowscriptaccess="always" width="640" height="385" />
</object>

Ответ 7

Кажется, что работает (опять?) С# t =, по крайней мере, для прямых URL-адресов. Указанный URL: https://www.youtube.com/watch?v=Fk2bUvrv-Uc#t=2m30s работает, то есть: он переходит на 2 мин 30 сек. Я тестировал это на FF, Chrome, IE11. Но, вероятно, лучше использовать & t =, и это общий конкатенационный символ аргумента URL.