Подтвердить что ты не робот

Как включить iOS 5 Safari Reader на моем веб-сайте?

Как работает функция Reader для Mobile Safari в iOS 5? Как включить его на моем сайте. Как мне сказать, какой контент на моей странице является статьей для запуска этой функции?

4b9b3361

Ответ 1

Многие ответы, представленные здесь, содержат ложную информацию. Вот некоторые исправления/пояснения:

  • Элемент <article> отлично работает как оболочка; Safari Reader распознает это. Мой сайт - пример. Не имеет значения, какой элемент оболочки вы выберете, если есть один, кроме <body> или <p>. Вы можете использовать <article>, <div>, <section>; или элементы, которые семантически неверны для этой цели, например <nav>, <aside>, <footer>, <header>; или даже встроенные элементы, такие как <span> (!).

  • Для чтения Reader не требуется никаких заголовков. Вот пример документа без каких-либо <h*> элементов, на которых Reader отлично работает: http://mathiasbynens.be/demo/safari-reader-test-3

Я добавил несколько подробностей относительно моих результатов здесь: http://mathiasbynens.be/notes/safari-reader

Ответ 2

Кажется, что алгоритм, на котором он основан, ищет p-теги, и он считает разделители типа ".". в innerText. Раздел (div) с наибольшим количеством точек фокусируется.

см: http://lab.arc90.com/experiments/readability/

Кажется, что это база для режима Reader, по крайней мере Safari присваивает ей атрибуты в выражениях, см.

Файл:///C:/Program%20Files/Safari/Safari.resources/Help/Acknowledgments.html

Arc90 (читаемость) Copyright © Arc90 Inc.
Читаемость лицензируется по лицензии Apache версии 2.0.

Ответ 3

Я тестировал около 100 вариантов этого на моем iPhone, чтобы выяснить, что вызывает это неуловимое состояние Reader. Мои выводы заключаются в следующем:

Вот что я нашел, оказал влияние:

  • Кажется, что требуется около 200 или более слов (или 1000 символов, включая пробелы) в статье, которую вы хотите вызвать "Reader".
  • Читатель НИКОГДА не срабатывал, когда у меня было менее 170 слов; хотя иногда это срабатывало, когда у меня было 180 или 190 слов.
  • Текст внутри определенных элементов, таких как <ol> или <ul> (которые обычно не используются для хранения истории), не будет учитываться в 200 словах (они, однако, будут отображаться в считывателе, если читатель запускается для других причины)
  • Приобретение 200 слов в блочном элементе, таком как <div> или <article>, кажется необходимым (я сказал бы, что был бы удивлен, если бы были какие-то сайты, на которых это еще не было)

Для полного раскрытия, вот что я нашел, не имел никакого влияния:

  • Использовать ли заголовок или нет
  • Обертывание текста в <p> или его свободное перемещение
  • Пунктуации (т.е. удаление всех периодов, запятых и т.д. не оказали влияния)

Ответ 4

Этот вопрос (Как отключить Safari Reader на веб-странице) содержит более подробную информацию. Скопировано здесь:


Мне любопытно узнать больше о том, что вызывает параметр Reader в Safari, а что нет. Я бы не планировал реализовать ничего, что могло бы его отключить, но было бы любопытно, как техническое упражнение.

Вот что я узнал до сих пор с некоторыми основными играми вокруг:

Вам нужен хотя бы один тег H Это не соответствует количеству символов, а числу P-тегов и длине Наверное, ищет разрывы предложений ". и другие критерии Safari предоставит" Reader ", если с помощью тега H и следующего:

1 тег P, 2417 символов 4 P-метки, 1527 символов 5 тегов P, 1150 символов 6 P-тегов, 862 символа Если вы вычитаете 1 символ из любого из вышеперечисленных, опция" Reader" недоступна.

Я должен отметить, что количество символов тега H играет роль, но, к сожалению, этого не осознавало, когда я определил результаты выше. Предположим, что более 20 символов для тега H и зафиксированы в результатах выше.

Некоторые другие интересные вещи:

Настройка для тегов P удаляет их из числа Настройка отображения на none, а затем показ их через 230 мс с Javascript также избегал опции Reader

Мне было бы интересно, если кто-нибудь сможет это полностью определить.

Ответ 5

Я боролся с этим. Я, наконец, вынул маркировку <ul> в своей истории и альте! он начал работать.

Я не помещал обертку вокруг тела, но, возможно, сделал это случайно.

Ответ 6

Тег статьи HTML5 не запускает его в моих тестах. Он также не работает на автономном контенте (т.е. Страницах, сохраненных на вашем локальном компьютере).

Кажется, что он вызывает это div-блок с большим количеством p с большим количеством текста.

Ответ 7

Теория p-тэгов звучит неплохо. Я думаю, что он также обнаруживает и другие элементы. Одна из наших страниц с 6 абзацами не вызывала Reader, но с 4 абзацами и тегом img.

Он также достаточно умен, чтобы обнаруживать многостраничные статьи. Попробуйте использовать многостраничную статью на nytimes.com или nymag.com. Было бы интересно узнать, как оно это обнаруживает.

Ответ 8

Удивительно, хотя это может быть, на самом деле он не обращает внимания на тег статьи HTML5, особенно разочаровывающий, учитывая, что Safari 5 имеет полную поддержку статьи, раздела, навигации и т.д. в CSS - их можно стилизовать так же, как div теперь, и вести себя так же, как любой элемент уровня блока.

Я специально настроил сайт с тегом статьи и несколькими тегами внутреннего раздела в подготовке к семантической маркировке HTML5 для такой цели, поэтому я действительно надеялся, что Safari 5 будет использовать это для Reader. Нет такой удачи - возможно, это должно быть ошибкой, так как это будет иметь большой смысл. На самом деле он полностью игнорирует большинство подзаголовков уровня h2 на странице, каждый из которых помечен как раздел, только отображающий единственный div, который придерживается критериев, упомянутых ранее.

По иронии судьбы, старая версия того же сайта, которая не имеет ни статьи, ни раздела, ни разделения тэгов Div, распознает весь объект для отображения в Reader.

Ответ 9

Оба Firefox и Chrome имеют похожий плагин с именем iReader. Вот его проект с исходным кодом.

http://code.google.com/p/ireader-extension/

Прочитайте код, чтобы получить больше.

Ответ 10

См. Принципы публикации статей.

Вот API-интерфейсы о том, как читать и анализировать: API-интерфейсы для читаемости.. Там уже есть проект, который вы можете назвать: ruby-readability.

Краткая история: Функция Safari Reader, поскольку браузер Apple Safari 5 встроил кодовую базу с именем Readability, а Readability - как простой инструмент для чтения на основе Javascript, который превратила любую веб-страницу в настраиваемый вид чтения. Он был выпущен Arc90 (как эксперимент Arc90 Lab), дизайн-центр в Нью-Йорке, еще в начале 2009 года. Он также встроен в Amazon Kindle и популярных iPad-приложениях, таких как Flipboard и Reeder.

Ответ 11

Я работаю над алгоритмами очистки веб-сайтов от информации "отходы", аналогичной функции Safari Reader. Это не так хорошо, как читаемость, но есть некоторые интересные вещи.

Вы можете узнать больше на странице smartbrowser.codeplex.com.