Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 08.01.2012, 19:08
Профессор
Посмотреть профиль Найти все сообщения от Livaanderiamarum
 
Регистрация: 25.12.2011
Сообщений: 786

ВСТАВКА ВИДЕО с youtube
Прога чтобы ссылки на ютьюб в видяшки превращать, принимает текст в котором ссылки на видяшки заменить, ширину и высоту добавляемых видях.

<html>
<script>
function youtube(text, width, height) {
	width = width || 420
	height = width || 315
	var reg = /(\s|^)(?:http:\/\/www\.|https:\/\/www\.|www\.)?youtube.com\/watch\?\S*v=(\S*?)(?:\s|&\S*|$)/g
	var youtube = '$1<object width="'
			+ width
			+ '" height="'
			+ height
			+ '"><param name="movie" value="http://www.youtube.com/v/$2?version=3&amp;hl=ru_RU"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/$2?version=3&amp;hl=ru_RU" type="application/x-shockwave-flash" width="'
			+ width
			+ '" height="'
			+ height
			+ '" allowscriptaccess="always" allowfullscreen="true"></embed></object>'
	return /* String */text.replace(reg, youtube)
}
</script>




<div id="text">Тут текст текст обычный невинный текст и тут ВНЕЗАПНО ссылка http://www.youtube.com/watch?v=RK6IibLVjI4&feature=related МУСКОТА!!11 и тут снова текст невинный текст</div>




<script>
//юзаем
var inner = document.getElementById('text').innerHTML
document.getElementById('text').innerHTML = youtube(inner , 130, 80) //парсим текст и засовываем обратно
</script>
</html>



вопрос, ЕСТЬ ЛИ ГОТОВЫЕ РЕШЕНИЯ)??? И знаете ли вы способы сделать это быстрее)?
И какой самый быстрый способ это сделать)? Напишите самую быструю функцию делающую это)

Последний раз редактировалось Livaanderiamarum, 08.01.2012 в 19:29.
Ответить с цитированием
  #2 (permalink)  
Старый 08.01.2012, 20:22
Интересующийся
Отправить личное сообщение для Saqsess Посмотреть профиль Найти все сообщения от Saqsess
 
Регистрация: 06.01.2012
Сообщений: 25

Не проще ли API YouTube использовать?
Ответить с цитированием
  #3 (permalink)  
Старый 08.01.2012, 20:27
Профессор
Посмотреть профиль Найти все сообщения от Livaanderiamarum
 
Регистрация: 25.12.2011
Сообщений: 786

Сообщение от Saqsess Посмотреть сообщение
Не проще ли API YouTube использовать?
Отличная идея! Дайте мне API redtube и pornhubhd.com пожалуйста.
Ответить с цитированием
  #4 (permalink)  
Старый 09.01.2012, 00:40
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Livaanderiamarum Посмотреть сообщение
<html>
<script>
function youtube(text, width, height) {
	width = width || 420
	height = width || 315
	var reg = /(\s|^)(?:http:\/\/www\.|https:\/\/www\.|www\.)?youtube.com\/watch\?\S*v=(\S*?)(?:\s|&\S*|$)/g
*!*
	var youtube = '$1<object width="'
			+ width
			+ '" height="'
			+ height
			+ '"><param name="movie" value="http://www.youtube.com/v/$2?version=3&amp;hl=ru_RU"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/$2?version=3&amp;hl=ru_RU" type="application/x-shockwave-flash" width="'
			+ width
			+ '" height="'
			+ height
			+ '" allowscriptaccess="always" allowfullscreen="true"></embed></object>'
*/!*
	return /* String */text.replace(reg, youtube)
}
</script>




<div id="text">Тут текст текст обычный невинный текст и тут ВНЕЗАПНО ссылка http://www.youtube.com/watch?v=RK6IibLVjI4&feature=related МУСКОТА!!11 и тут снова текст невинный текст</div>




<script>
//юзаем
var inner = document.getElementById('text').innerHTML
document.getElementById('text').innerHTML = youtube(inner , 130, 80) //парсим текст и засовываем обратно
</script>
</html>
Array.join
Ответить с цитированием
  #5 (permalink)  
Старый 09.01.2012, 00:52
Профессор
Посмотреть профиль Найти все сообщения от Livaanderiamarum
 
Регистрация: 25.12.2011
Сообщений: 786

Сообщение от melky Посмотреть сообщение
Array.join
Не понял при чем тут join, youtube это строка, в которую вставляются параметры высоты и ширины
Ответить с цитированием
  #6 (permalink)  
Старый 09.01.2012, 09:56
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

следует понимать, то ри подобных операциях конкатенацию лучше заменять на join.

а во вторых у тебя рега каждый раз создаётся. её следует закешировать.
Ответить с цитированием
  #7 (permalink)  
Старый 09.01.2012, 10:45
Интересующийся
Отправить личное сообщение для Saqsess Посмотреть профиль Найти все сообщения от Saqsess
 
Регистрация: 06.01.2012
Сообщений: 25

Сообщение от Livaanderiamarum Посмотреть сообщение
Отличная идея! Дайте мне API redtube и pornhubhd.com пожалуйста.
Речь шла о youtube.
Например.
Ответить с цитированием
  #8 (permalink)  
Старый 09.01.2012, 15:02
Профессор
Посмотреть профиль Найти все сообщения от Livaanderiamarum
 
Регистрация: 25.12.2011
Сообщений: 786

Сообщение от melky Посмотреть сообщение
следует понимать, то ри подобных операциях конкатенацию лучше заменять на join.
а во вторых у тебя рега каждый раз создаётся. её следует закешировать.
спасибо) реал не знал про реги) и про джоин, а больше скольки коннактаций лучше так сливать?
п.с. покажи как бы слил ты? я не представляю себе код с join удобнее чем конактация.
Ответить с цитированием
  #9 (permalink)  
Старый 09.01.2012, 15:43
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

да через запятую их перечислить в массиве, потом сразу join вызвать.
Ответить с цитированием
  #10 (permalink)  
Старый 09.01.2012, 15:44
Профессор
Посмотреть профиль Найти все сообщения от Livaanderiamarum
 
Регистрация: 25.12.2011
Сообщений: 786

Сообщение от melky Посмотреть сообщение
да через запятую их перечислить в массиве, потом сразу join вызвать.
Но у меня же высота и ширина вставляется. как джоин у знает какие стыки заполнять высотой а какие шириной?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как вырубить видео? OEMOEM Events/DOM/Window 3 10.01.2014 07:59
javascript в видео jesz Events/DOM/Window 0 15.02.2011 19:58