2015-10-30 6 views
1

Я пытаюсь найти слово внутри pdf с помощью текстового поля внутри веб-страницы. Я встроил PDF внутри IFRAME, но он не работает. Этот код работает с обычным текстом. Когда я ищу слова, иногда он открывает PDF-файл или обновляет страницу, а не выделяет ее.ERROR.Access PDF-элемент внутри iFrame

<style> 
     span.highlight { 
    background: yellow 
} 
     </style> 
     <input type="text" /> 
     <div class="para"> 
     <button onclick="getIframeText()">get iframe text</button> 
     <iframe id="myframe1" src="h.pdf" style="width:718px; height:700px;" frameborder="0"></iframe> 

    </div> 

JAVASCRIPT ДЛЯ SEACRHING тексте

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
    <script type='text/javascript'> 
var $para = $('.para') 
$("input").keyup(function() { 
    $para.find('span.highlight').contents().unwrap(); 
    var mysearchword = this.value.trim(); 
    if (mysearchword) { 
    var re = new RegExp('(' + mysearchword.trim().split(/\s+/).join('|') + ')', "gi"); 
    $para.html(function(i, html) { 
     return html.replace(re, '<span class="highlight">$1</span>') 
    }); 
    } 
}); 
</script> 
+1

Почему вы используете iframe? Есть другие способы добраться туда, куда вы хотите отправиться. Я бы рекомендовал использовать PDF.js. Одна из вещей, которые делает библиотека, - это преобразование PDF в другие форматы, где их можно легко найти. – zipzit

+0

@zipzit pdf.js не работает во всех браузерах. – SSangeet

+0

@zipzit Мне нужно искать слово внутри него, а затем я должен выделить это слово внутри pdf и отобразить PDF для пользователя – SSangeet

ответ

0

Код не будет работать для PDF.

Замена слова, найденного в HTML, на класс highlight, все в порядке. Но это невозможно для PDF. Сначала вам нужно преобразовать PDF в HTML.

+0

Я знаю, что проблема в том, что я должен прочитать слово внутри pdf или выделить его. Другой парень опубликовал в комментарии, что это возможно с помощью PDF.js, но я думаю, что pdf.js не работает во всех браузерах – SSangeet

+0

Пожалуйста, посмотрите ссылку http://www.evermap.com/javascript.asp. – Sachink

+0

Примечание: PDF не имеет DOM. Таким образом, в любом случае вам необходимо преобразовать PDF в элемент, такой как HTML, SVG, CANVAS или другие поддерживаемые DOM элементы. – Sachink

Смежные вопросы