Jump to content
  • 0

Random названия блока


turguni
 Share

Question


<div id=tat onclick="toggle('content1','j1')">
<script>
function toggle(id1,id2) {
var el1 = document.getElementById(id1);
el1.style.display = (el1.style.display == 'none') ? '' : 'none'
var el2 = document.getElementById(id2);
el2.style.display = (el2.style.display == 'none') ? '' : 'none'
}
</script>
<div id=j1 style="display:none;">
</div>
</div>

Вот он код.

Как сделать, чтобы наверху, вместо j1 делался j и случайное число до семи.. тоесть j1 или j2 или j5 и тд...

То есть чтобы при клике на блок ¨tat¨ чтобы появлялся блок с названием j и рандомным номером до семи.

и чтобы название этого блока , например он стал j5, чтобы именно это новое название писалось в конец моего кода, там где сейчас стоит j1 style="display: и тд..

и с блоком content1 то же самое, какой у j станет число, такое же чтоб было и у content.

Спасибо)

Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

для того что бы получить рендомное значение "от и до" есть JS функция: http://javascript.ru....ru/Math.random

Ну как в моём случае это применить? уже 2 ночи не сплю, всегда сам до всего допираю, но тут чо-то слишком долго мучаюсь.. подскажите, ребят, Вам жеж не сложно)

Link to comment
Share on other sites

  • 0

примерно так (не проверял ..но должно работать)


function random()
{var random =(function(){return Math.floor(Math.random() * (7-0+1)) + 0;}())
var id="j"+random;
return id;
}
function toggle(id1,id2) {
var el1 = document.getElementById(id1);
el1.style.display = (el1.style.display == 'none') ? '' : 'none'
var el2 = document.getElementById(id2);
el2.style.display = (el2.style.display == 'none') ? '' : 'none'
}
document.getElementById("tat").onclick=function()
{var id=random();
toggle('content1',id)
}

Link to comment
Share on other sites

  • 0

примерно так (не проверял ..но должно работать)


function random()
{var random =(function(){return Math.floor(Math.random() * (7-0+1)) + 0;}())
var id="j"+random;
return id;
}
function toggle(id1,id2) {
var el1 = document.getElementById(id1);
el1.style.display = (el1.style.display == 'none') ? '' : 'none'
var el2 = document.getElementById(id2);
el2.style.display = (el2.style.display == 'none') ? '' : 'none'
}
document.getElementById("tat").onclick=function()
{var id=random();
toggle('content1',id)
}

Круто! работает! но как мне сделать чтобы у моего блока, того что в конце моего кода, становилось название, выданное рэндомом. (к примеру j5)

Link to comment
Share on other sites

  • 0

Я хотел, чтобы при нажатии на блок tat, появлялся блок j1 и сбоку появлялся блок content1 одновременно. Как-то с этим разобрался и всё заработало. Но мне нужно немного другое.. чтобы блок был не именно j1, а рандомно какой-то из семи.. j1,j2,j3,j4,j5,j6 или j7. И какой блок выберется рандомно, такой-же content должен показываться одновременно. Таких блоков tat у меня несколько..По сути они квадратики.. как перевёрнутые карты.

при клике на одну карту, должен появляться блок этот (j).. типо что скрывалось за этой картой.. и сбоку одновременно контент - описывающий карту.. если можете дать совет, то пож-ста дайте его в виде кода, а не просто команд.. я не знаю js.. знаю дофига чего другого, изучением js займусь скоро.. но сейчас нету времени... помогите.. это не должно быть чем-то сложным.

Можт это на чём-то другом делать, не на js.. я не разбираюсь..

Link to comment
Share on other sites

  • 0

конечно запутано..

так если есть эти блоки в документе

. j1,j2,j3,j4,j5,j6 или j7
,то функция getElementById(id2) будет работать с ними....или их создавать надо динамически?или еще надо вот это
content1
добавлять тоже что и ид


document.getElementById("tat").onclick=function()
{var random=(function(){return Math.floor(Math.random() * (7-0+1)) + 0;}());
var content="content"+random;
var id="id"+random;
toggle(content,id)
}

Edited by aleks_lv
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy