Просмотрщик файлов microsoft office на вашем сайте средствами javascript и Яндекс.Диск

Давно не писал в блог. Напишу что делал из последнего. Потребовалось прикрутить возможность просмотра документов .doc,.docx,.xls,.xlsx на сайте. Знаю про сервис, который предоставляет google.docs, но мне не хотелось с ним связываться-так как сайт госконторы. У яндекса есть возможность передавать в качестве get параметра ссылку на ваш документ таким образом:

https://docviewer.yandex.ru/?url=адрес с файлом

Мне же необходимо было применить эти изменения ко всем ссылкам на сайте, в адресе которых содержится .doc или .xls. Получился скрипт такого плана:


<script type = "text/javascript">
    //Скрипт для вывода кнопки просмотра документов .doc,.docx,.xls,.xlsx на сервисе Яндекса

    window.onload = function(){
 
        var As = document.getElementsByTagName("a");

        for(var i = 0, l = As.length; i < l; i ++){
            mylink=document.getElementsByTagName("a")[i].href;
            myinner=document.getElementsByTagName("a")[i].innerHTML;
 
            if (document.getElementsByTagName("a")[i].className.search('yaviewer')==-1){
                if (document.getElementsByTagName("a")[i].href.search('.doc')!=-1){
                     document.getElementsByTagName("a")[i].innerHTML=" <a class='yaviewer2' href='"+mylink+"'>"+myinner+"</a><a href=https://docviewer.yandex.ru/?url="+mylink+" target='_blank' class='yaviewer'>Просмотреть</a>";
                }
                if (document.getElementsByTagName("a")[i].href.search('.xls')!=-1){
                    document.getElementsByTagName("a")[i].innerHTML=" <a class='yaviewer2' href='"+mylink+"'>"+myinner+"</a><a href=https://docviewer.yandex.ru/?url="+mylink+" target='_blank' class='yaviewer'>Просмотреть</a>";
                }
            }
 
        }
    }
</script>

 

Понравилась статья? Поделиться с друзьями: