XPath оценивает, убивает скрипт в Chrome - PullRequest
1 голос
/ 15 февраля 2011

Я запускаю простой document.evaluate () с простым выражением XPath на этом узле:

<li class="comment-block"> 
<div class="comment-icon"> 
    <a href="address.com" class="comment-buddy-icon-link">Address</a> 
</div> 
<div class="comment-content"> 
    <p class="comment-head"> 
        <span class="comment-owner"> 
            <span class="comment-author-container">
                <a href="http://some.address.com">Some Address</a>
            </span> 
        </span> 
        <small class="comment-meta"> 
            Some text
        </small> 
    </p> 
    <div class="comment-body"> 
        <p>Some more Text</p> 
    </div> 
</div>
</li>

Строка XPath: div[contains(@class, 'comment-content')].Это отлично работает в Firefox и ломается в Chrome.В Chrome нет исключений, скрипт просто завершается.Я не понимаю, почему это сломалось, ситуация кажется простой, выберите дочерний элемент div элемента li, класс которого «comment-content».

Что интересно, еще одна строка XPath .//div[contains(@class, 'comment-content')] отлично работает в Chrome.

1 Ответ

1 голос
/ 15 февраля 2011

Если вы хотите выбрать div непосредственные дочерние элементы узла контекста, в декабре я исправил ошибку Webkit: Выражения XPath, начинающиеся с div, обрабатываются как синтаксические ошибки . Это исправление в сборке Dev Channel в Chrome (10), но не в стабильной (9). Сейчас вам нужно будет использовать ./div, что означает то же самое, что и div.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...