首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何检查jQuery是否是从C#代码中加载的,如果jQuery是在普通的HTML中添加的?

如何检查jQuery是否是从C#代码中加载的,如果jQuery是在普通的HTML中添加的?
EN

Stack Overflow用户
提问于 2012-07-31 22:43:35
回答 3查看 1.1K关注 0票数 1

我正在开发一个WEB_PART,我想知道是否有一些方法可以发现在要插入web部件的母版页项目中是否存在任何JQUERY LIB。我想这样做:

代码语言:javascript
复制
if (jQuery) {  
 // jQuery is loaded  
Page.ClientScript.RegisterClientScriptInclude(typeof(WebpartSlideShow), "jQuery",                        "/_layouts/Jquery-Cycle/jquery-1.5.1.min.js");
Page.ClientScript.RegisterClientScriptInclude(typeof(WebpartSlideShow), "jQueryCycle", "/_layouts/Jquery-Cycle/jquery.cycle.all.min.js");
               // break;
   } else {
  // jQuery is not loaded
    Page.ClientScript.RegisterClientScriptInclude(typeof(WebpartSlideShow), "jQueryCycle", "/_layouts/Jquery-Cycle/jquery.cycle.all.min.js");

  } 

但是,只有在通过Page.ClientScript添加jQuery的情况下,才能在普通超文本标记语言中添加jQuery

EN

回答 3

Stack Overflow用户

发布于 2012-07-31 22:54:01

您无法检查c#的目标页面中是否包含jquery。您只能在运行时使用js从组件中进行检查。

票数 0
EN

Stack Overflow用户

发布于 2012-08-01 00:11:35

我能想到的唯一方法就是用jQuery设置一个cookie,然后以某种方式在服务器端检查这个cookie是否存在。

我不是一个C#开发人员,所以不能帮助准确的语法,但原则应该是相同的。

票数 0
EN

Stack Overflow用户

发布于 2012-08-01 15:17:08

尝试注册您自己的JavaScript代码,它应该检查jQuery是否已经加载,如果没有加载。跨浏览器示例如下所示。

代码语言:javascript
复制
function initScript(url, callback) {
    var script = document.createElement('script');
    script.src = url;
    var head = document.getElementsByTagName('head')[0],
    done = false;

    // Attach handlers for all browsers
    script.onload = script.onreadystatechange = function () {
        if (!done && (!this.readyState || this.readyState == 'loaded' || this.readyState == 'complete')) {
            done = true;
            callback();
        };
    };

    head.appendChild(script);
};


function initJQuery(callback) {
    //if the jQuery object isn't available
    if (typeof (jQuery) == 'undefined') {
        initScript("/_layouts/YourWebPart/jquery-1.7.1.min.js", function() { callback(); });
    } else {
        callback();
    }   
}

initJQuery(function () {
    alert('loaded');    
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11742711

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档