2014-01-03 3 views
0

Можно ли добавить класс к якорю в коде ниже? потому что у меня есть конфликт с другими якорями ...добавить класс для привязки в jQuery

function SelectText(element) { 
    var doc = document; 
    var text = doc.getElementById(element);  
    if (doc.body.createTextRange) { 
    var range = document.body.createTextRange(); 
    range.moveToElementText(text); 
    range.select(); 
    } else if (window.getSelection) { 
    var selection = window.getSelection(); 
    var range = document.createRange(); 
    range.selectNodeContents(text); 
    selection.removeAllRanges(); 
    selection.addRange(range); 
    } 
} 


$(document).ready(function() { 
    $('a').click(function() { 
    SelectText($(this).attr("rel")); 
    }); 
}) 

EDIT: Я хочу, чтобы поймать весь код в блоке кода и использовать атрибут отн для него. Я использую эту строку PHP для него:

$output ='<br /><br /><a rel="highlight'.$element_id.'" class="selectable">[Select All]</a>'; // assign unique ID to rel attribute 

ДИВ, в котором код имеет тот же уникальный идентификатор, поэтому я использую отн поймать код. Но почему-то это создает проблемы с другими якорями, они больше не работают. Поэтому я подумал: если я добавлю класс в якорь, он может прослушивать только а с этим конкретным именем класса.

+2

В какой части кода? В функции 'SelectText'? или в другом месте? – ElliotM

+0

В чем проблема? Какой «конфликт» у вас есть? Где вы хотите добавить класс? Когда вы хотите добавить класс? Как вы хотите добавить класс? Что такое * точная * проблема у вас есть? Я вообще не понимаю этот вопрос. –

+0

Добавить когда? По щелчку? На 'готовом'? Когда заходит солнце? – MMM

ответ

1

Использование $(this).addClass(). Это щелчок элемента.

$(document).ready(function() { 
    $('a').click(function() { 
     $(this).addClass('selectable'); 
    } 
} 

http://api.jquery.com/addclass/

Или, если вы говорите об использовании click обработчика только для a тегов с классом selectable вы можете сделать:

$(document).ready(function() { 
    $('a.selectable').click(function() { 
     SelectText($(this).attr("rel")); 
    } 
} 
+1

Это работает !!! Большое спасибо. Больше никаких конфликтов. –

0

Вам нужно добавить идентификатор к якорю, к которому вы хотите добавить класс, затем с помощью jquery, вы можете использовать .addClass() - http://api.jquery.com/addclass/

IE

$("#yourAnchorID").addClass("myClass yourClass"); 
+0

Это добавит его ко всем меткам привязки. Вероятно, это не то, чего хочет OP. – MMM

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