Видеоплеер Youtube в asp.net с С#

это мой первый вопрос на этом сайте.

В настоящее время я разрабатываю и кодирую новый веб-сайт. В asp.net с С#. У меня такой вопрос:
я хочу добавить музыкальный проигрыватель (проигрыватель YouTube) в файл default.aspx. Короче говоря, на этом веб-сайте есть 4 или 5 других страниц, и я хочу воспроизводить звуки, не прерываясь при просмотре другой страницы.

Это возможно или нет? И если можно, то как? Спасибо.
Я исследовал эту тему на этом сайте, но не смог найти реального ответа.


person midheaven    schedule 02.09.2011    source источник
comment
Посетите этот сайт..... aspnetaudio.com   -  person sikender    schedule 02.09.2011
comment
Вы хотите просматривать другие страницы, продолжая воспроизводить видео на default.aspx? Другие страницы во всплывающем окне или в модальном диалоговом окне? Я не понимаю, как вы хотите, чтобы видео воспроизводилось на одной странице и имело возможность переходить на другие страницы.   -  person David Hoerster    schedule 02.09.2011
comment
Спасибо, во-первых. Я хочу просматривать другие страницы, продолжая воспроизводить видео на default.aspx. Видео не важно, важен только звук. Например, песня...   -  person midheaven    schedule 02.09.2011


Ответы (1)


Вы не сможете сделать это только с помощью C# или любой другой чисто серверной технологии. Как только вы перейдете на новую страницу, ваш встроенный проигрыватель YouTube будет удален. Чтобы добиться результата, вам придется проделать некоторую работу на стороне клиента с помощью JavaScript. Самый простой (но, возможно, наименее элегантный) подход — использовать default.aspx как страницу, содержащую основную структуру навигации в iframe. Затем навигация по сайту происходит внутри iframe без обновления «default.aspx».

Проблема с этим заключается в том, что он не обновляет URL-адрес в строке URL-адреса, а история страницы не обновляется. Таким образом, вы можете обойти это (вроде как), перейдя со страницы контейнера на страницы хэш-тегов, такие как «default.aspx#page1», «default.aspx#page2» и т. д., в то же время, когда вы перемещаетесь по iframe'у. d к реальному содержимому, скажем, «page1.aspx», «page2.aspx». Вашим инструментом для этого будет объект JavaScript "window.location".

Гораздо более крутым и передовым подходом является использование чего-то вроде технологии MVC на стороне клиента, которая только что появилась в YUI 3.4. .

person mjhm    schedule 02.09.2011
comment
Спасибо за подробный ответ. Я понял это. Я не против любых вариантов. Я ищу лучшее решение. Я могу использовать параметры javascript/jquery. Может быть, нельзя использовать никакую вспышку, вот и все. И, пожалуйста, ответьте на вопрос: с чего мне начать? - person midheaven; 02.09.2011
comment
Возможно, посмотрите на github.com/balupton/History.js/blob/master. /README.md для кода истории, совместимого с JQuery. - person mjhm; 02.09.2011
comment
Привет еще раз, я хочу задать новый вопрос. Как я могу получить доступ к элементам видеоплеера YouTube из кода позади. Например, предположим, что в пользовательском плейлисте на моей веб-странице (не на странице YouTube) есть 5 видео, и я хочу воспроизвести первую песню, затем вторую, а затем... Как я могу это сделать? С чего я могу начать? - person midheaven; 04.09.2011
comment
Вам следует взглянуть на JavaScript PlayerAPI code.google.com/apis/ youtube/getting_started.html#player_apis, и этот пример поможет вам начать работу: code.google.com/apis/ajax/playground/ Главное, что вам нужно сделать, это использовать функции onPlayerStateChange для прослушивания окончания одного видео и запускать playVideo для следующего видео. - person mjhm; 04.09.2011
comment
Спасибо. Я немедленно посмотрю на эти ссылки. - person midheaven; 04.09.2011