Изменение содержимого DIV
Добрый вечер.
Есть список переключателей, он постоянно меняет текущее значение. Вот код, который постоянно в цикле листает radio
l = document.news_links.link.length;
for (i = 0; i < l; i++)
{if (document.news_links.link[i].checked){a = i}}
setInterval(function()
{
if (a == l-1)
{a = 0;}
else
{++a;}
document.news_links.link[a].click();
}, 2000)
А вот так выглядит разметка <div id="news"> <div id="news_content"> </div> <form name="news_links"> <ul> <li><input type="radio" name="link" checked/>1</li> <li><input type="radio" name="link" />2</li> <li><input type="radio" name="link" />3</li> <li><input type="radio" name="link" />4</li> <li><input type="radio" name="link" />5</li> </ul> </form> </div> Подскажите, как изменять содержимое news_content в зависимости от текущего radio каждый раз при изменения состояния? |
DarkLotos,
;)
<!DOCTYPE HTML>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
</head>
<body>
<div id="news">
<div id="news_content">1
</div>
<form name="news_links">
<ul>
<li><input type="radio" name="link" checked/>1</li>
<li><input type="radio" name="link" />2</li>
<li><input type="radio" name="link" />3</li>
<li><input type="radio" name="link" />4</li>
<li><input type="radio" name="link" />5</li>
</ul>
</form>
</div>
<script>
var l = document.news_links.link.length, a = 0;
setInterval(function()
{
a = ++a % l;
document.news_links.link[a].checked = true;
document.getElementById('news_content').innerHTML = a + 1
}, 2000)
</script>
</body>
</html>
|
Цитата:
<!DOCTYPE html>
<html>
<head>
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<link rel='stylesheet type=text/css href=tmp.css' />
-->
<style type='text/css'>
#news_content > div {
display: none;
}
#news_content > div.on {
display: block;
}
</style>
<script type='text/javascript'>
$(function (){
$('#news input:radio').click(function () {
var i=$(this).data('content');
$('#news_content > div.on').removeClass('on');
$('#cnt_item'+i).addClass('on');
});
(function (){
l = document.news_links.link.length;
for (i = 0; i < l; i++) {
if (document.news_links.link[i].checked){
a = i;
};
};
setInterval(function() {
a = ++a % l;
document.news_links.link[a].click();
}, 2000);
})();
})
</script>
</head>
<body>
<div id="news">
<div id="news_content">
<div id='cnt_item1' class='on'>Content 1</div>
<div id='cnt_item2'>Content 2</div>
<div id='cnt_item3'>Content 3</div>
<div id='cnt_item4'>Content 4</div>
<div id='cnt_item5'>Content 5</div>
</div>
<form name="news_links">
<ul>
<li><input type="radio" data-content='1' name="link" checked/>1</li>
<li><input type="radio" data-content='2' name="link" />2</li>
<li><input type="radio" data-content='3' name="link" />3</li>
<li><input type="radio" data-content='4' name="link" />4</li>
<li><input type="radio" data-content='5' name="link" />5</li>
</ul>
</form>
</div>
</body>
</html>
|
| Часовой пояс GMT +3, время: 15:40. |