2012-06-18 2 views
1

Ниже мой код и в настоящее время он ищет всю веб-страницу. Я пытаюсь выяснить, как заставить его искать только внутри таблицы. (На странице есть только одна таблица).Как я могу сделать поиск greasemonkey только в таблице

Любая помощь будет оценена по достоинству.

var TargetLink    = $("a:contains('gg')"); 
var TargetSink    = $("a:contains('u')"); 

if (TargetLink && TargetLink.length) 
{ 
window.location.href = TargetLink[0].href; 
} 
else if (TargetSink && TargetSink.length) 
{ 
window.location.href = TargetSink[0].href; 
} 

ответ

2
var TargetLink    = $("table a:contains('gg')"); 
var TargetSink    = $("table a:contains('u')"); 

EDIT: Вы говорите, что есть только одна таблица на этой странице. Вы абсолютно знаете, что будет только один стол? Даже если вы считаете, что ответ «да», я бы попытался добавить идентификатор или селектор классов, чтобы в будущем это не сломалось.

Кроме того, следующий код может быть упрощено:

if (TargetLink && TargetLink.length) 

к:

if (TargetLink.length) 



Re: "could I combine those 2 variables into 1":

Используйте запятую в селекторе, например, так:

//--- Need more of the HTML structure for a better selector. 
var TargetLink    = $("table") 
          .find ("a:contains('gg'), a:contains('u')") 
          ; 
if (TargetLink.length) { 
    window.location.href = TargetLink[0].href; 
} 

Если оба вида ссылок будут найдены, 'gg' будет использоваться (первый).

+0

Ничего себе, это был очень быстрый ответ. Это именно то, что я искал! Пока я здесь, как я могу объединить эти 2 переменные в 1? Я пробовал как var TargetSink = $ ("table a: содержит ('u', 'gg')"); и несколько других подобных изменений, но я не мог заставить его работать. – RayB

+0

О, спасибо за подсказку упростить совет – RayB

+0

О, я не видел часть редактирования, но Да, возможно, что в будущем будет более одной таблицы. – RayB

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