Переключение между вкладками диапазонов для отображения другой ошибки HTML Iframe - PullRequest
0 голосов
/ 14 марта 2019

Я создаю электронное приложение и создал меню div с интервалами в нем, которые содержат собственный HTML-код Iframe.Я хочу иметь возможность нажимать на определенный диапазон и отображать в нем свой Iframe.Прямо сейчас, когда у меня есть несколько Iframe в файле HTML, они отображают их друг над другом.Вот мой HTML:

<div class="menu">
    <img src="./images/group-30.png" class="logo"></img>

    <span class="menu_spans" id="tasks">
        <img src="images/group-47.png" class="tasks-img"></img>
        <!--<iframe src="tasks.html"></iframe>-->  
    </span>

    <span class="menu_spans" id="add-tasks">
        <img src="images/group-55.png" class="add-tasks-img">
        <iframe src="addTasks.html" scrolling="no" allowtransparency="yes" style="width:1020px; height: 574px; position: relative; top:-350%; left: 57px; border:none;"></iframe>
    </span>

    <span class="menu_spans" id="billing">
        <img src="images/group-60.png" class="billing-img">
        <!--<iframe src="billing.html" scrolling="no" allowtransparency="yes" style="width: 1020px; height: 574px; position: relative; top:-269px; left: 57px; border: none;"></iframe>-->
    </span>

    <span class="menu_spans" id="proxies">
        <img src="images/group-61.png" class="proxies-img">
        <!--<iframe src=""></iframe>-->
    </span>

 etc...

Я пробовал что-то подобное, но это не работает:

let menu_spans = document.querySelectorAll(".menu_spans");

for (var i = 0; i < menu_spans.length; i++) {
    menu_spans[i].addEventListener('click', () => {
        console.log(this.id);
    });
}

Я уже кодировал это раньше в jQuery некоторое время назад, но яне знаю, как это сделать просто обычным js.

Любая помощь приветствуется, спасибо!

Ответы [ 2 ]

0 голосов
/ 14 марта 2019

Вот код JavaScript, который правильно читает идентификатор элемента, по которому щелкнули, поэтому вы можете использовать идентификатор элемента для установки элемента iframe в будущем.

let menu_spans = document.querySelectorAll(".menu_spans");

for (var i = 0; i < menu_spans.length; i++) {
    menu_spans[i].addEventListener('click', (event) => {
           if (event.currentTarget.nodeName === "SPAN") {
           console.log(event.currentTarget.id);
            return true;
           }
    });
}

Ссылка на скрипку: скрипка

0 голосов
/ 14 марта 2019

Вы можете использовать что-то вроде этого:

let menu_spans = document.querySelectorAll(".menu_spans");

for (var i = 0; i < menu_spans.length; i++) {
  menu_spans[i].addEventListener('click', smth, false);
}

function smth() {
  console.log(this.id);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...