Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Отметь буквы, которых нет в русском алфавите. (https://javascript.ru/forum/dom-window/56252-otmet-bukvy-kotorykh-net-v-russkom-alfavite.html)

LoolGram 06.06.2015 19:58

Отметь буквы, которых нет в русском алфавите.
 
Здравствуйте.
Прощу помощи, в реализации такой вот задачи. Дан алфавит русского языка надо выбрать те буквы которые не входят в состав алфавита.
Алфавит записан в таблицу.
Аа Бб Вв Hh Gg Ff.
При нажатие на букву задний фон становиться красным если не верно, а если верно то зеленым. Когда все буквы были выбраны то открывается окно с сообщением «Правильно».


Вот примерно что я наделал

http://jsbin.com/wabidusugu/2/edit?html,css,js

Заранее спасибо.

рони 06.06.2015 21:03

LoolGram,
а Рр Сс Тт и подобные это буквы какого алфавита?

LoolGram 06.06.2015 21:12

рони,
Это из русского алфавита.

Дан весь алфавит русского языка и три буквы из английского.

рони 06.06.2015 21:40

LoolGram,
<!DOCTYPE html>


<html>
<head>
  <meta charset="utf-8">
  <title>JS Bin</title>
<style>
#table table {
    overflow:hidden;
    border:1px solid #FFDAB9;
    background:#fefefe;
    width:70%;
    margin:5% auto 0;
    border-radius:5px;
}

#table table th, td {
    padding-bottom: 10px;
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 10px;
    text-align:center;
}

#table th {
   // padding-top:22px;
    text-shadow: 1px 1px 1px #fff;
    background:#e8eaeb;
}

#table td {
    border: 3px solid #e0e0e0;
}


#table td.act {
    background: red;
    color: white;
}
#table td.act2 {
    background: green;
    color: #000;
}
</style>
</head>
<body>
<table id="table">
  <tr>
    <td>Аа</td>
    <td>Бб</td>
    <td>Yy</td>
    <td>Гг</td>
    <td>Дд</td>
    <td>Hh</td>
  </tr>
  <tr>
    <td>Оо</td>
    <td>Gg</td>
    <td>Пп</td>
    <td>Рр</td>
    <td>Сс</td>
    <td>Тт</td>
  </tr>
  </table>

<script>
function myFunc(e) {
    var evt = window.event || e,
        obj = evt.srcElement || evt.target;
    if (obj.tagName && obj.tagName == "TD") {
        var letter = /[a-z]/i.test(obj.innerHTML);
        obj.classList.toggle(letter ? "act2" : "act")
    }
    var ok = document.querySelectorAll(".act2").length == 3 && !document.querySelectorAll(".act").length;
    ok && alert("great victory")
}
onload = function() {
    var trg = document.getElementById("table");
    if (document.addEventListener) trg.addEventListener("click", myFunc);
    else if (document.attachEvent) trg.attachEvent("onclick", myFunc);
    else trg.onclick = myFunc
};
</script>
</body>
</html>

LoolGram 07.06.2015 07:19

Большое спасибо )

pornoborets 07.06.2015 15:25

<html>
<head>
  <meta charset="utf8">
</head>
<body>
<table id="table">  
  <tr>
    <td>Аа</td>
    <td>Бб</td>
    <td>Yy</td>
    <td>Гг</td>
    <td>Дд</td>
    <td>Hh</td>
  </tr>   
  <tr>    
    <td>Оо</td>
    <td>Gg</td>
    <td>Пп</td>
    <td>Рр</td>
    <td>Сс</td>
    <td>Тт</td>
  </tr>                     
  </table>

<script>
f=function(){if(/\w+/.test(this.innerHTML)) this.style.background="red"}
;[].forEach.call(document.querySelectorAll("table td"), function(el){el.onclick=f})
</script>
    
</body>
</html>

рони 07.06.2015 16:33

pornoborets,
:-?

pornoborets 07.06.2015 18:20

рони,
Что, не так что-то?

рони 07.06.2015 18:24

pornoborets,
всё нормально только зачем? вместо 1 клика 12 -- вместо решения - демострация способа, который надо доводить до ума

pornoborets 07.06.2015 18:32

Цитата:

Сообщение от рони
вместо 1 клика 12

В этом месте не понял. ТС писал вроде
Цитата:

При нажатие на букву
то есть, кликов по-любому >1. Или о чем Вы?


Часовой пояс GMT +3, время: 17:40.