2010-02-02 2 views
2

Вопрос: Я злоупотребляю таблицей в виде списка кнопок, используя onclick даже в каждой ячейке.
Проблема заключается в том, что кнопки являются кнопками масштабирования, а при повторном нажатии слишком быстро (двойной щелчок) вы выбираете текст кнопки (= table cell) (даже если вы этого не хотите), и это выглядит странно.
Могу ли я отключить это? Могу ли я сделать текст в таблице неизбираемым?Недоступный текст в таблице html?

ответ

0

К сожалению, уже не актуально.

Я искал вдоль линии css способ сделать это. , но лучший, что я нашел, был
http://www.tek-tips.com/viewthread.cfm?qid=1184318&page=1

Оказался, что я на самом деле нужно добавить JS EventHandler:

onselectstart="javascript: return(false);" 

Вышеуказанные работы для IE и Chrome. Но тогда, вам все еще нужно, чтобы перевести его на FireCrap:

onselectstart="return false;" 
onmousedown="if (typeof event.preventDefault != 'undefined') {event.preventDefault();}" 
+7

Не запускайте обработчики событий с помощью 'javascript:', вы путаете это с его использованием в атрибуте 'href'. Это присваивает следующий оператор метке «javascript» в IE и по существу совпадает с «onselectstart =» blahblahblah: return (false); ». Это может вызвать ошибку в других браузерах. –

4

Да, если вы сделаете правильную кнопку. Вы можете стиль кнопки так же, как вы можете стиль ячейки таблицы: (! Раскаиваться, грешного)

.button { 
background-color:blue; 
color:red; 
border:4px solid green; 
} 

<input type="button" class="button" value="MyButton" /> 

Вы все еще можете поместить его в таблицу, если вы хотите, но, по крайней мере, сделать кнопку кнопку. нет;)

Если вы хотите, чтобы он автоматически заполняет всю ширину ячейки таблицы, установите кнопку display:block;

5

Чтобы ответить на исходный вопрос ... Для того, чтобы запретить пользователю возможность выделить текст на странице, применяются следующие правила CSS:

-moz-user-select: none; -khtml-user-select: none; user-select: none;

+5

Не работает в IE. –

0

Вы можете установить фокус на TD при запуске события onclick.
Вот пример с DIV, но то же самое относится к TD.

<div onclick="clicked(this);">clicks:</div> 
<script> 
function clicked(div){ 
    div.innerHTML += '*'; 
    div.focus(); 
} 
</script> 
1

добавления

style="user-select: none; -moz-user-select: none; -khtml-user-select: none;" onselectstart="javascript:return false;" 

таблицу следует сделать трюк

<table id="TableUnselectableExample" style="width: 100%; user-select: none; -moz-user-select: none; -khtml-user-select: none;" onselectstart="javascript:return false;"> 

поэтому его сочетание решений, предлагаемых здесь (работает в IE и FF)

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