не работает скрипт замены текста

голоса: 0

<?if(strpos($RFILE_DIRECT_URL$,'youtu'))?>
<iframe width="640" height="480" src="$RFILE_DIRECT_URL$?rel=0" frameborder="0" allowfullscreen></iframe>
<?if(strpos($RFILE_DIRECT_URL$,'youtu.be'))?>
<script type="text/javascript"> 
document.body.innerHTML = document.body.innerHTML.replace('youtu.be/', 'youtube.com/embed/'); 
</script>
<?endif?>
<?if(strpos($RFILE_DIRECT_URL$,'youtube.com/watch'))?>
<script type="text/javascript"> 
document.body.innerHTML = document.body.innerHTML.replace('youtube.com/watch?v=', 'youtube.com/embed/'); 
</script>
<?endif?><?endif?>

 

| Автор: | Категория: JavaScript

Ответов: 1

голоса: 0
 
Лучший ответ
А он и не будет работать, так как все искомые слова начинаются на Y, а strpos ищет первый символ у ссылки.
| Автор:
Выбор ответа лучшим | | Автор: zaz ass
тогда как это реализовать?
zaz ass,

Без скртпта, на условных операторах

<iframe width="600" height="400" src="<?if(substr($RFILE_DIRECT_URL$,14,2)='be')?>https://youtube.com/embed/<?substr($RFILE_DIRECT_URL$,17,11)?><?else?><?if(substr($RFILE_DIRECT_URL$,24,5)='watch')?>https://www.youtube.com/embed/<?substr($RFILE_DIRECT_URL$,32,11)?><?else?>$RFILE_DIRECT_URL$<?endif?><?endif?>" frameborder="0" allowfullscreen></iframe>

...