изменение значения элемента display
Помогите пожалуйса.. Нужно, чтобы после клика на ссылку изменялось значение элемента display с block на none и обратно. Ниже код, но он не работает.
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"> </script> <script> function my_f(objName) { if ($(objName).css('display') == 'none') { $(objName).css('display') = 'block'; } else { $(objName).css('display') = 'none'; } } </script> <a href="javascript:void(0)" onclick="my_f('#textid')">(+)</a> <div id="textid" style="display:block"> скрытый текст </div> Подскажите, где ошибка? |
<script>
function my_f(objName) {
var object = document.getElementById(objName);
object.style.display == 'none' ? object.style.display = 'block' : object.style.display = 'none'
}
</script>
<a href="javascript:void(0)" onclick="my_f('textid')">(+)</a>
<div id="textid" style="display:block;">
скрытый текст
</div>
|
(Sandr), многа букаф...
<!DOCTYPE html>
<html>
<HEAD>
<TITLE></TITLE>
<style>
</style>
<script>
function my_f(Id) {
var o=document.getElementById(Id)
o.style.display = (o.style.display == 'none')? 'block': 'none'
}
</script>
</HEAD>
<body>
<a href="#" onclick="my_f('textid')">(+)</a>
<div id="textid">
скрытый текст
</div>
</body>
</html>
|
Цитата:
<script type="text/javascript">
window.onload = function(){
document.getElementById('a').onclick = function(){
var div = document.getElementById('div');
div.style.display = (div.style.display == '') ? 'block' : '';
return false;
};
};
</script>
<style type="text/css">
div {background: red; display: none; width: 100px; height: 50px;}
</style>
<a href="#" id="a">click</a>
<div id="div"></div>
|
Всем большое спасибо) и с наступающим))
|
не заметил, а вам на jQuery код нужен был?
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
$(function(){
$('.a').click(function(){
$('.div1').toggleClass('div2');
return false;
});
});
</script>
<style type="text/css">
div {background: red; width: 100px; height: 50px; }
.div1 {display: none;}
.div2 {display: block;}
</style>
<a href="#" class="a">click</a>
<div class="div1"></div>
|
Цитата:
|
Цитата:
|
Лол, +1)
<!DOCTYPE HTML>
<html>
<head>
<script type="text/javascript">
function hide(id) {var o=document.getElementById(id).style; o.display=o.display?'': 'none'}
</script>
</head>
<body>
<a href="#" onclick="hide('textid')">(+)</a>
<div id="textid">
скрытый текст
</div>
</body>
</html>
|
появился ещё один вопрос.. как сделать, чтоб если текст виден, то ссылка с надписью (+) менялась на (-) ?
пробовал ссылке присвоить id="plus_minus" а потом изменить таким образом: plus_minus.innerHTML = '(-)' но ничего не получилось.. |
<script>
function my_f(objName, a) {
var object = document.getElementById(objName);
object.style.display = (object.style.display == 'none') ? '' : 'none'
a.innerHTML = (object.style.display == 'none') ? '(+)' : '(-)'
}
</script>
<a href="javascript:void(0)" onclick="my_f('textid', this)">(-)</a>
<div id="textid" style="display:block;">
скрытый текст
</div>
|
спасибо ещё раз)
|
Здравствуйте все!
Воспользовался этим кодом:
<script>
function my_f(objName, a) {
var object = document.getElementById(objName);
object.style.display = (object.style.display == 'none') ? '' : 'none'
a.innerHTML = (object.style.display == 'none') ? '(+)' : '(-)'
}
</script>
<a href="javascript:void(0)" onclick="my_f('textid', this)">(-)</a>
<div id="textid" style="display:block;">
скрытый текст
</div>
Все отлично работает, но не подскажите как его модифицировать следующим образом: будет к примеру несколько ссылок и несколько скрытых дивов. По нажатию на одну ссылку див меняет стиль на видимый, а ссылка меняет стиль (цвет допустим). При нажатии на другую ссылку прошлый див сворачивается и открывается тот по которому кликнули (опять жеж со сменой цвета ссылки). Много всего перелопатил, но хочется очень легкого и изящного решения, а все что предлагает слишком громоздко и много лишнего. Я к яваскрипту редко обращаюсь (чуть чуть другая специфика) но вот пришлось) Заранее спасибо за помощь! |
talliar,
возможно вам поможет это http://jqueryui.com/demos/accordion/ |
Спасибо! Как раз то, что нужно!))
|
Привет. Есть задача воспроизвести поведение опции «Показать полностью…» со страниц ВКонтакта (когда большие комментарии сжимаются). С помощью одного из кодов, представленных выше это удалось — только остаётся перенос строки. Дано ли избавиться от переноса?
<script>
function my_f(objName, a) {
var object = document.getElementById(objName);
object.style.display = (object.style.display == 'block') ? '' : 'block'
a.innerHTML = (object.style.display == 'block') ? '' : '(-)'
}
</script>
</HEAD>
<BODY>
<p>Хозяева жизни ведут борьбу на двух направлениях. Первый фронт — битва за изменение сюжета. Второй фронт — борьба за то, чтобы выбросить из истории (сюжета) как можно большее число людей и народов: если в сюжет входит слишком много «посторонних», лидирующая роль драматурга и режиссера, которую узурпировали элиты, ставится под вопрос. Простой пример. В 1918 году в России белое движение боролось за то, чтобы командарм Сорокин, батька Махно, бывший бандит Котовский <a onclick="my_f('textid', this)">Показать полностью…</a><span id="textid" style="display:none;">остались внеисторическими фигурами вместе со многими миллионами других серых анонимов. Соответственно, красная борьба велась за то, чтобы жизнь людей, чье существование в истории значило не больше, чем жизнь ежа в лесу, превратилась в легендарное и поучительное повествование в учебниках истории для будущих поколений. Тогда победили красные. Сейчас белые изменили сюжет и осуществляют реванш: стирают легендарное повествование, выбрасывая его героев из истории.
Элиты всеми силами стремятся вернуть себе роль драматурга, узурпировать ее и избавиться от лишних сюжетов.</span></p>
|
| Часовой пояс GMT +3, время: 23:50. |