Windows 8共享目标与JQuery崩溃

前端之家收集整理的这篇文章主要介绍了Windows 8共享目标与JQuery崩溃前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在开发一个接收contente(URI)的应用程序,我正在使用IE10共享进行测试.

问题是我的元素(span,divs或按钮)与onclick事件处理程序相关联,在第二次点击中关闭共享面板.
任何元素的窗口中的第二次点击会导致崩溃.

我测试了运行该页面代码作为应用程序的默认页面,一切正常.这种不希望的行为只发生在共享面板上.

经过一段时间的手动调试,我发现导致crase的代码片段:Jquery lib.
如果Jquery存在于页面中,则会在共享面板中导致崩溃.

不可能使用Visual Studio进行调试,因为只有我没有附加调试器,才会发生这种崩溃.调试器附加到它,一切正常.

有人可以帮忙吗?请看我下面的简单页面

<!DOCTYPE html>
<html>

    <head>
        <title></title>
        <!-- WinJS references -->
        <script src="//Microsoft.WinJS.0.6/js/base.js"></script>
        <script src="//Microsoft.WinJS.0.6/js/ui.js"></script>
        <script src="/js/default.js" type="text/javascript"></script>
        <script src="/js/jquery-1.7.2.js" type="text/javascript"></script>
        <script>
            var curr;

            function test() {
                if (curr) {
                    curr.className = "cls1";
                }

                curr = event.srcElement;
                curr.className = "cls2";
            }
        </script>
        <style>
            .cls1 {
                background-color: #f00;
                cursor: pointer;
            }
            .cls2 {
                background-color: #0094ff;
                cursor: pointer;
            }
        </style>
    </head>

    <body>
        <h1>Share</h1>
        <br />
        <div onclick="test();" class="cls1">Button</div>
        <div onclick="test();" class="cls1">Button</div>
    </body>

</html>

谢谢!

改为:
<div onclick="javascript:test(); class="cls1">Button</div>

可选:

/* Your own code is good enough but i wanted to create another point of view */
var curr;

function test() {
    curr = event.srcElement;
    if ($(curr).hasClass("cls1")) {
        $(curr).removeClass("cls1")
        $(curr).addClass("cls2")
    }
});

或另一种做法:

$(document).ready(function () {
    $("div").each(function () {
        $(this).click(function () {
            if ($(this).hasClass("cls1")) {
                $(this).removeClass("cls1")
                $(this).addClass("cls2")
            }
        });
    });
});

如果您看到任何更改,请通知我.我以这种方式(盲目地)回答,因为只有认为有意义,这里有麻烦与js,我想知道当你有jquery lib为什么不使用它?这又是另一个问题.如果您认为我的答案不适合您的问题,请尽量给我们尽可能多的信息,以解决这个问题.

猜你在找的Windows相关文章