Перенаправление страницы, если у клиента нет времени выполнения Silverlight - PullRequest
1 голос
/ 19 апреля 2011

Я хочу определить, установлено ли на клиенте, обращающемся к веб-приложению silverlight, время выполнения silverlight, если нет, я хочу перенаправить на страницу aspx с указанием причин сбоя при запуске приложения (вместо окна сообщения с сообщением об отсутствующем плагине silverlight).Как это сделать?

Ответы [ 2 ]

1 голос
/ 19 апреля 2011

Этот Javascript выдает предупреждение. Я уверен, что его можно изменить, чтобы вместо этого перенаправить пользователя

function hasSilverlightPlugin() {
    var slplugin = false;
    var browser = navigator.appName; // Get the browser type

    if (browser == 'Microsoft Internet Explorer') {
        try {
            var slControl = new ActiveXObject('AgControl.AgControl');
            if (slControl) {
                slplugin = true;
            }
        } catch (e) { }
    }
    else {
        // Netscape, FireFox, Google chrome etc
        try {
            if (navigator.plugins["Silverlight Plug-In"]) {
                slplugin = true;
            }
        } catch (e) { }
    }
    return slplugin;
}


/** This function checks the browser to see if Silverlight has been installed.
* The display informing the user that his/her browser is lacking the plugin
* is shown in the Announcements section of the desktop tab.
*/
function silverlightAnnouncementWarning() {
    var elem = null;
    var hasPlugin = hasSilverlightPlugin();
    elem = document.getElementById("SilverlightWaringElem");
    if (!hasPlugin) {

        if (elem) {
            elem.style.display = "";
            var warningMsg = "WARNING THE SILVERLIGHT PLUGIN IS NOT INSTALLED ON THIS MACHINE"
            elem.innerHTML = warningMsg;
        }
    }
    //64 bit silverlight warning
    if (navigator.platform == "Win64") {
        if (elem) {
            var warningMsg = "64 bit browser has been detected which is currently incompatible with Silverlight"
            elem.style.display = "";
            var msg = elem.innerHTML;
            if (msg && msg.length > 0) {
                warningMsg = msg + " (also a " + warningMsg + ")";
            } else {
                warningMsg = "A " + warningMsg;
            }
            elem.innerHTML = warningMsg;
        }
    }
}

function popupSilverlightWarning() {
    var hasPlugin = hasSilverlightPlugin();
    if (!hasPlugin) {
        var warningMsg = "THE SILVERLIGHT PLUGIN IS NOT INSTALLED ON THIS MACHINE!\n";
        warningMsg += "This page requires the Silverlight plugin in order to work.\n";
        warningMsg += "Please contact your Systems Administrator to have the Silverlight plugin installed on this computer.\n";
        warningMsg += "Thank you . . .";
        alert(warningMsg);
    }
}
0 голосов
/ 19 апреля 2011

JavaScript выше, но Silverlight 4.0 имеет хороший файл JavaScript с каждым проектом, который делает этот тип вещей намного проще.

http://msdn.microsoft.com/en-us/library/cc265155(vs.95).aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...