Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Увеличить, уменьшить текст нажатием на него Задать вопрос (https://javascript.ru/forum/dom-window/76330-uvelichit-umenshit-tekst-nazhatiem-na-nego-zadat-vopros.html)

olegan4eg88 30.12.2018 17:01

Увеличить, уменьшить текст нажатием на него Задать вопрос
 
Добрый день всех с наступающим! Помогите решить задачу, а именно создать условие, сейчас при нажатии на Текст 1 он у нас увеличивается и окрашивается, также нужно сделать и для Текст 2. Но если один из span у нас уже увеличен, то при нажатии на следующий, предыдущий должен принять исходное значение. Таких span будет около сотни.
<span id="big">Текст 1.</span><br>
<span id="big">Текст 2.</span><br>

var span = document.querySelector('#big');
	span.onclick = function(){
		    span.style.fontSize = '13pt';
            span.style.fontWeight = 'bold';
            span.style.background = '#D9FFAD';
	}

рони 30.12.2018 17:37

olegan4eg88,
id уникально, используйте класс.

Nexus 30.12.2018 17:42

ID - уникальный идентификатор.
<div class="spans-container">
<span>Текст 1.</span><br>
<span>Текст 2.</span><br>
</div>
<style>.spans-container span.highlighted{font-size:13pt;font-weight:bold;background:#D9FFAD;}</style>
<script>
const container = document.querySelector('.spans-container');
const activeClass = 'highlighted';

container.addEventListener('click', function(e) {
    const target = e.target;
    if (!target || target.tagName.toLowerCase() !== 'span')
        return;

    if (target.classList.contains(activeClass))
        return void target.classList.remove(activeClass);

    const activeElement = container.querySelector('.' + activeClass);
    if (activeElement)
        activeElement.classList.remove(activeClass);

    target.classList.add(activeClass);
});
</script>

рони 30.12.2018 17:57

Nexus,
:)
<!DOCTYPE html>

<html>

<head>
    <title>Untitled</title>
    <meta charset="utf-8">
    <style type="text/css">
        .big.up {
            font-size: 13pt;
            background-color: #D9FFAD;
            font-weight: bold;
        }
    </style>

    <script>
        addEventListener("click", function (e) {
                var target = e.target;
                if (target && target.classList.contains("big")) {
                    var up = document.querySelector('.up');
                    if (up && up != target) up.classList.remove("up");
                    target.classList.toggle("up")
                }
            }

        );
    </script>
</head>

<body>
    <span class="big">Текст 1.</span><br>
    <span class="big">Текст 2.</span><br>
    <span class="big">Текст 1.</span><br>
    <span class="big">Текст 2.</span><br>
</body>

</html>


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