1

我有这段 Javascript 代码在 Chrome 和 Internet Explorer 上运行良好,但我无法在 Firefox 中运行

    <script src="jquery-1.10.2.js"></script>
    <script src="jquery-1.10.2.min.js"></script>
    <script type="text/javascript">
function aufklappen(id, arr) {


    $('.3').attr("src", "images/leftarrow.png");

    var style = $("div[id='" + id + "']").attr("style");

    $('.2').hide();

    if (style == "display: none;") {
        var elem = document.getElementById(id);
        elem.style.display = "block";
        $("#" + arr).attr("src", "images/downarrow.png");
    } else {

        var elem = document.getElementById(id);
        elem.style.display = "none";
        $("#" + arr).attr("src", "images/leftarrow.png");
    }
}
    </script>

我有一个代码从显示一些基本数据的 mysql 数据库中获取数据。当我单击图像时,我想要做的是显示一个隐藏的 div 框,其中包含更多详细信息。此外,我想更改此图片以显示指向下方的箭头。如果有人点击其中一张图片,我首先要隐藏所有 div,以便一次只显示一个隐藏的 div 框。每个图像都有class="3"每个隐藏的 div 框class="2"。ID 是动态创建的,因此我可以显示我想要的 div 框。我用这段代码调用函数:

<a onclick='aufklappen("<? echo $flightnum;?>2", "<? echo $flightnum;?>arr")'><img class="3" id="<? echo $flightnum;?>arr" src="images/leftarrow.png" /></a>
4

1 回答 1

0

如果没有演示,我很难回答。但是,我可以为您提供一些建议,看看会发生什么。

一种。我可以看到您使用了三种不同的按 ID 选择技术。为了一致性,选择一个。

1. var style = $("div[id='" + id +"']").attr("style");

2. var elem = document.getElementById(id);

3. $("#" + arr).attr("src","images/downarrow.png");

湾。替换这个

var style = $("div[id='" + id +"']").attr("style");

var style = $("div[id='" + id +"']").css("display");

然后改变这个

if (style == "display: none;")

if (style === "none")

看你怎么上。

于 2013-10-03T11:29:59.070 回答