Javascript 如何访问datast标题并将其放入if语句中
我试图让我的函数为用户单击的每个图像显示不同的描述。现在,我的函数根据单击的图像显示不同的标题,标题列在数据集标题中。我打算为if thetitle=X做一个语句,那么innerHTML描述将是Y。我无法理解函数中if语句为什么不起作用Javascript 如何访问datast标题并将其放入if语句中,javascript,html,Javascript,Html,我试图让我的函数为用户单击的每个图像显示不同的描述。现在,我的函数根据单击的图像显示不同的标题,标题列在数据集标题中。我打算为if thetitle=X做一个语句,那么innerHTML描述将是Y。我无法理解函数中if语句为什么不起作用 <div class="main-textbox-about-description"> <h1 class="main-textbox-about-descriptio
<div class="main-textbox-about-description">
<h1 class="main-textbox-about-description-text">St. Paul, Apostle of Christ</h1>
</div>
<div class="main-textbox-about">
<div class="main-textbox-about-saints">
<img src="images/Saint Slide/st-peter-2176658_1280.jpg" class="main-textbox-about-saints-photos main-textbox-about-saints-photos-1" data-caption="St. Peter">
<img src="images/Saint Slide/saint-stylianos-2191792_1280.jpg" class="main-textbox-about-saints-photos main-textbox-about-saints-photos-2" data-caption=" St. Stylianos of Paphlagonia">
<img src="images/Saint Slide/st-demetrius-2176682_1280.jpg" class="main-textbox-about-saints-photos main-textbox-about-saints-photos-3" data-caption="St. Demetrius">
<img src="images/Saint Slide/archon-2086750_1280.jpg" class="main-textbox-about-saints-photos main-textbox-about-saints-photos-4" data-caption="Arch Angel Michael">
<img src="images/Saint Slide/st-andrew-2176673_1280.jpg" class="main-textbox-about-saints-photos main-textbox-about-saints-photos-5" data-caption="St. Andrew">
<img src="images/Saint Slide/saint-john-the-baptist-1652345_1280.jpg" class="main-textbox-about-saints-photos main-textbox-about-saints-photos-6" data-caption="St. John The Baptist">
<img src="images/Saint Slide/st-paul-2176669_1280.jpg" class="main-textbox-about-saints-photos main-textbox-about-saints-photos-7" data-caption="St. Paul, Apostle of Christ">
</div>
</div>
<div class="main-textbox-about-description-long">
<h1 class="main-textbox-about-description-long-text">St John the baptist</h1>
</div>
试试这个:
if (e.target.dataset.caption == "St. Paul, Apostle of Christ") {
secondaryText.innerHTML = "Saint Paul was an Apostle of Christ";
}
请注意double==
顺便说一句,将单击事件绑定到图像容器(div),而不是图像本身。“if”最有效。您没有比较==,而是使用赋值=。赋值结果隐式转换为“true”。所以你实际上有if(true){…这就是为什么JS解析器不报告错误。我如何才能把它分配给图像本身,因为双重和三重语法也不起作用。
if (e.target.dataset.caption == "St. Paul, Apostle of Christ") {
secondaryText.innerHTML = "Saint Paul was an Apostle of Christ";
}