2013-04-23 3 views
0

Если текст размещен за пределами дисплея, есть ли способ убедить браузеры копировать текст, только видимый на экране, когда пользователь выбирает текст с помощью ctrl-a или выбирает все. В следующем примере я не хочу копировать текст для абсолютного позиционированного div.Как скопировать только видимый текст

<html> 
    <body> 
    <div style="position:absolute;top:30;left:-300">This should not be copied</div> 
    <div>Only this should be copied</div> 
    </body> 
</html> 

Некоторые больше информации:

  • В идеале я ищу решение для Webkit/GTK, но это относится к Firefox/хром, а также. Оба браузера демонстрируют такое же поведение.
  • Я не контролирую отображаемую страницу. Страница отображается в окне webkit для автоматического инструмента, который пытается проанализировать содержимое страницы. Часть алгоритма смотрит на текст, доступный по выбору all/copy
  • У меня есть доступ к полным API-интерфейсам webkit/gtk.
+0

Я попробовал распечатать в pdf функцию хром на ubuntu. Сгенерированный PDF не отображает позиционированный div. Так что есть что-то, что точно знает, что отображается, доступно. Просто нужно понять, какая часть API поддерживает его. – user871199

ответ

0

Почему бы не просто сделать display: none;, а не перемещать его влево?

<html> 
    <body> 
    <div style="display: none;">This should not be copied</div> 
    <div>Only this should be copied</div> 
    </body> 
</html> 

Я не вижу причин, по которым вам нужно переместить его с экрана.

+0

Я думаю, вы пропустили пулю 2. Я не контролирую страницу. У меня есть окно url и webkit, которое отображает страницу – user871199

+0

Я пропустил это. Мои извинения. –

+0

Можете ли вы использовать javascript/jquery? Вы можете использовать это, чтобы изменить свойства стиля этого div. –

0

Пользователь может всегда использовать firebug для копирования, что захочет.

+0

Я не уверен, как это относится к моему вопросу. Я не мешаю пользователям копировать/вставлять. Как указано в вопросе, у меня есть инструмент, который отображает страницу. Я хочу получить текст, который отображается на экране - эффективно, что видит пользователь на экране. – user871199

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