保持颜色留在地图上 - Javascript

时间:2015-07-28 17:17:35

标签: javascript raphael jquery-effects world-map

我正在研究如何使用JavaScript制作世界地图。我在http://backspace.com/mapapp/javascript_world/找到了这个惊人的例子。但是,我希望每个状态的颜色在点击后保持不变(但如果没有点击光标,则其余部分仍然是#efefef)。我是JavaScript的新手,我希望我能解决这个问题。

        // when cursor is over
        st[0].onmouseover = function () {
            current && map[current].animate({fill: "#efefef", stroke: "#666"}, 300);
            st.animate({fill: st.color, stroke: "#ccc"}, 300);
        };

        // when clicking
        var flag = true;
        st[0].onclick = function () {
            if(confirm("Have you been to " + state + "?" )) {
                st.animate({fill: st.color, stroke: "#ccc"}, 300);
                flag = false;
            }
        };

        // when cursor is away
        if(flag) {
        st[0].onmouseout = function () {
            st.animate({stroke: "#666",fill: "#efefef" }, 300);
        };
        }

1 个答案:

答案 0 :(得分:0)

而不是$animate更改st元素的CSS并设置background-color。 这样,元素的背景将是持久的。

st.css({'background-color': <color-code>});

我希望这会有所帮助。