Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何访问datast标题并将其放入if语句中_Javascript_Html - Fatal编程技术网

Javascript 如何访问datast标题并将其放入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

我试图让我的函数为用户单击的每个图像显示不同的描述。现在,我的函数根据单击的图像显示不同的标题,标题列在数据集标题中。我打算为if thetitle=X做一个语句,那么innerHTML描述将是Y。我无法理解函数中if语句为什么不起作用


                <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";
}