Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 22.12.2015, 19:01
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

как поменять картинку при щелчке в таблице
Здравствуйте! вот скрипт который при щелчке меняет картинку.
<script>
function chg(id)
{
var el = document.getElementById(id);  
if (el.src.indexOf("image/x.png")>0)
{
el.src="image/xb.png";
}
else
{
el.src="image/x.png";
}
}
</script>
<img src="image/x.png" id="img_1" onClick="chg(this.id,'check')">

а в таблице не хочит
<td align="center" background="image/x.png" id="img_1" onClick="chg(this.id,'check')">1</td>

как сделать чтобы в баблице менял?
Ответить с цитированием
  #2 (permalink)  
Старый 22.12.2015, 20:00
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

leon2009sp,
у ячейки нет src
Ответить с цитированием
  #3 (permalink)  
Старый 22.12.2015, 20:09
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

так я уже и подставлял background в место него
Ответить с цитированием
  #4 (permalink)  
Старый 22.12.2015, 20:16
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

leon2009sp,
атрибуты
Ответить с цитированием
  #5 (permalink)  
Старый 22.12.2015, 20:20
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

leon2009sp,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  .old{
    cursor: pointer;
    text-align: center;
    background-image: url(http://javascript.ru/forum/images/smilies/smile.gif);
  }
   .new.old{
    background-image: url(http://javascript.ru/forum/images/smilies/dance3.gif);
  }
  </style>
</head>

<body>
<table width="400" summary="" >
	<thead>
		<tr>
			<th>Title 1</th>
			<th>Title 2</th>
			<th>Title 3</th>
		</tr>
	</thead>
	<tbody>
		<tr>
			<td class="old">1</td>
			<td>Cell 1.2</td>
			<td>Cell 1.3</td>
		</tr>
		<tr>
			<td>Cell 2.1</td>
			<td>Cell 2.2</td>
			<td class="old">Cell 2.3</td>
		</tr>
	</tbody>
</table>
<script>
    window.addEventListener('DOMContentLoaded', function() {
      [].forEach.call(document.querySelectorAll('.old'), function(item) {
              item.addEventListener('click', function() {
                  item.classList.toggle('new')
              });
          });

        });
</script>
</body>

</html>
Ответить с цитированием
  #6 (permalink)  
Старый 22.12.2015, 20:27
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

спасибо! это сложновато для меня, попробую разобрать
Ответить с цитированием
  #7 (permalink)  
Старый 22.12.2015, 20:34
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

leon2009sp,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  td[background]{
     cursor: pointer;
     text-align: center;
  }

  </style>
</head>

<body>
<table width="400" summary="" >
	<thead>
		<tr>
			<th>Title 1</th>
			<th>Title 2</th>
			<th>Title 3</th>
		</tr>
	</thead>
	<tbody>
		<tr>
			<td background="http://javascript.ru/forum/images/smilies/smile.gif">1</td>
			<td>Cell 1.2</td>
			<td>Cell 1.3</td>
		</tr>
		<tr>
			<td>Cell 2.1</td>
			<td>Cell 2.2</td>
			<td background="http://javascript.ru/forum/images/smilies/smile.gif">Cell 2.3</td>
		</tr>
	</tbody>
</table>
<script>
    window.addEventListener('DOMContentLoaded', function() {
      [].forEach.call(document.querySelectorAll('td[background]'), function(item) {
              item.addEventListener('click', function() {
                  var background = item.getAttribute('background') == 'http://javascript.ru/forum/images/smilies/smile.gif' ?
                  'http://javascript.ru/forum/images/smilies/dance3.gif' : 'http://javascript.ru/forum/images/smilies/smile.gif'
                  item.setAttribute('background', background)
              });
          });

        });
</script>
</body>

</html>
Ответить с цитированием
  #8 (permalink)  
Старый 22.12.2015, 20:40
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

leon2009sp,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">

  </style>
</head>

<body>
<table width="400" summary="" >

	<tbody>
		<tr>
			<td align="center" background="http://javascript.ru/forum/images/smilies/smile.gif" id="img_1" onClick="chg(this.id)">1</td>
		</tr>
	</tbody>
</table>

<script>
function chg(id) {
    var el = document.getElementById(id);
    if (el.background.indexOf("http://javascript.ru/forum/images/smilies/smile.gif") === -1) {
        el.background = "http://javascript.ru/forum/images/smilies/smile.gif";
    } else {
        el.background = "http://javascript.ru/forum/images/smilies/dance3.gif";
    }
}
</script>

</body>

</html>
Ответить с цитированием
  #9 (permalink)  
Старый 05.01.2016, 13:11
Кандидат Javascript-наук
Отправить личное сообщение для leon2009sp Посмотреть профиль Найти все сообщения от leon2009sp
 
Регистрация: 22.12.2015
Сообщений: 106

нажатие на кнопки
Рони, правда не хотел беспокоить, думал что с горем, но справлюсь.
я выбрал вот этот вариант
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
 .old{
cursor: pointer;
text-align: center;
background-image: url(x.png);
}
.new.old{
background-image: url(xb.png);
}
 </style>
</head>
<body>
<table width="400" summary="">
<tbody>
 <tr>
<td class="old" id="1" value="1">1</td>
<td class="old" id="2" value="2">2</td>
<td class="old" id="3" value="3">3</td>
</tr>
<tr>
<td class="old"  id="4" value="4">4</td>
 <td class="old" id="5" value="5">5</td>
 <td class="old" id="6" value="6">6</td>
</tr>
<tr>
<td id="4">----------</td>
<td id="5">------------</td>
<td id="6">---------</td>
</tr>
</tbody>
</table>
<script>
window.addEventListener('DOMContentLoaded', function() 
{
[].forEach.call(document.querySelectorAll('.old'), function(item) 
{
 item.addEventListener('click', function() 
{
 item.classList.toggle('new')
 });
 });
 });
</script>
</body>
</html>
вот http://sincorrer.xyz/game.php здесь он.
но сюдаже можно дописать чтобы показывала сколько номеров выбрано и какие?
Ответить с цитированием
  #10 (permalink)  
Старый 05.01.2016, 14:22
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

leon2009sp,
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
 .old{
background-repeat: no-repeat;
background-size:  contain;
cursor: pointer;
text-align: center;
background-image: url(http://sincorrer.xyz/image/xb.png);
}
.new.old{

background-image: url(http://sincorrer.xyz/image/x.png);
}
 </style>
</head>
<body>
<table width="200" summary="">
<tbody>
 <tr>
<td class="old" id="1" value="1">1</td>
<td class="old" id="2" value="2">2</td>
<td class="old" id="3" value="3">3</td>
</tr>
<tr>
<td class="old"  id="4" value="4">4</td>
 <td class="old" id="5" value="5">5</td>
 <td class="old" id="6" value="6">6</td>
</tr>
<tr>
<td id="4">----------</td>
<td id="5">------------</td>
<td id="6">---------</td>
</tr>
</tbody>
</table>
<div class="show">Выбор за Вами!</div>
<script>
window.addEventListener('DOMContentLoaded', function()
{
[].forEach.call(document.querySelectorAll('.old'), function(item)
{
 item.addEventListener('click', function()
{ if(document.querySelectorAll('.new').length > 2 && !item.classList.contains('new')) {alert('больше 3 нельзя, уберите одно из 3 для нового выбора');return} ;
 item.classList.toggle('new');
 var res = [].map.call(document.querySelectorAll('.new'),
 function(el) {
  return el.id
 })
 document.querySelector('.show').innerHTML = res.length ? 'Выбрано: '+ res.length +' номера/ов ' + res : 'Выбор за Вами!'
 });
 });
 });
</script>
</body>
</html>

Последний раз редактировалось рони, 05.01.2016 в 23:16.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как загрузить картинку при display:block; используя всем известный плагин lazyload raindew jQuery 9 01.10.2013 14:55
Как вывести картинку по запросу Bon Events/DOM/Window 2 04.04.2012 02:20
Как при быстром многократном клике по кнопке обрабатывать только первый клик battrack jQuery 3 22.03.2012 10:47
Как сделать? При выходе мышкой за пределы окна браузера, начинает грузится другая стр alb Events/DOM/Window 13 01.09.2010 12:19
Как поменять картинку при нажатии на нее syegorius Events/DOM/Window 1 28.08.2010 23:14