相关疑难解决方法(0)

在JavaScript控制台中包含jQuery

有没有一种简单的方法可以在Chrome JavaScript控制台中为不使用它的网站添加jQuery?例如,在网站上我想获取表格中的行数.我知道jQuery非常简单.

$('element').length;
Run Code Online (Sandbox Code Playgroud)

该网站不使用jQuery.我可以从命令行添加吗?

javascript jquery

720
推荐指数
12
解决办法
40万
查看次数

为什么document.write被认为是"不好的做法"?

我知道document.write被认为是不好的做法; 我希望编制一份提交给第三方供应商的理由清单,说明为什么他们不应该document.write在分析代码的实现中使用它们.

请在下面提供您声称document.write为不良做法的理由.

javascript

355
推荐指数
10
解决办法
18万
查看次数

动态加载JavaScript文件

如何可靠地动态加载JavaScript文件?这将用于实现一个模块或组件,当'初始化'时,组件将根据需要动态加载所有需要的JavaScript库脚本.

使用该组件的客户端不需要加载<script>实现此组件的所有库脚本文件(并手动将标记插入其网页) - 只需要"主"组件脚本文件.

主流JavaScript库如何实现这一目标(Prototype,jQuery等)? 这些工具是否将多个JavaScript文件合并为一个可再发行的"构建"版本的脚本文件?或者他们是否动态加载辅助"库"脚本?

这个问题的补充:有没有办法在加载动态包含的JavaScript文件后处理事件? 原型document.observe适用于文档范围的事件.例:

document.observe("dom:loaded", function() {
  // initially hide all containers for tab content
  $$('div.tabcontent').invoke('hide');
});
Run Code Online (Sandbox Code Playgroud)

脚本元素有哪些可用事件?

javascript import file include

158
推荐指数
8
解决办法
13万
查看次数

检查是否使用Javascript加载了jquery

我正在尝试检查我的Jquery库是否已加载到我的HTML页面上.我正在检查它是否有效,但有些事情是不对的.这是我有的:

<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <script type="text/javascript" src="/query-1.6.3.min.js"></script>
        <script type="text/javascript">
          $(document).ready(function(){
             if (jQuery) {  
               // jQuery is loaded  
               alert("Yeah!");
             } else {
               // jQuery is not loaded
               alert("Doesn't Work");
             }
          });
        </script>
Run Code Online (Sandbox Code Playgroud)

javascript jquery

152
推荐指数
6
解决办法
24万
查看次数

如何在同一页面上运行不同版本的jQuery?

我的公司购买了一个在页面上呈现ASP.NET控件的产品.此控件使用jQuery 1.2.3并向页面添加脚本标记以引用它.如果以任何方式修改控件(包括修改引用不同版本的jQuery),控件的开发人员将不支持使用该控件.

我即将开始开发自己的控件,并希望使用jQuery 1.3的功能和速度改进.这两个控件都需要存在于同一页面上.

如何让购买的控件使用jQuery 1.2.3和新的自定义开发来使用jQuery 1.3?出于好奇,如果我们使用另外一个需要引用另一个版本的jQuery的控件怎么办?

javascript asp.net jquery

68
推荐指数
2
解决办法
4万
查看次数

Internet Explorer中"script"标记的"onload"处理程序

我一直在使用这个函数将onload处理程序附加到脚本标记,它似乎是互联网上推荐的方式.
然而,如果页面已经加载(在8中测试),它在Internet Explorer中不起作用.您可以看到它在普通浏览器中有效(加载脚本时会触发警报).

我错过了什么吗?
谢谢

javascript internet-explorer onload

51
推荐指数
2
解决办法
6万
查看次数

如果尚未加载jQuery,我如何加载它?

我有一个包含以下内容的initializor.js:

if(typeof jQuery=='undefined')
{
    var headTag = document.getElementsByTagName("head")[0];
    var jqTag = document.createElement('script');
    jqTag.type = 'text/javascript';
    jqTag.src = 'jquery.js';
    headTag.appendChild(jqTag);
}
Run Code Online (Sandbox Code Playgroud)

然后我将该文件包含在另一页的某个地方.代码检查是否加载了jQuery,如果不加载,则将其添加到Head标记.

但是,jQuery没有初始化,因为在我的主文档中,我声明了一些事件来测试它.我还尝试在支票下面编写一些jQuery代码,Firebug说"jQuery未定义".这是一种方法吗?Firebug在head标签中显示jquery包含标签!

另外,我可以动态地将代码添加到$(document).ready()事件中吗?或者只是将一些Click事件添加到几个元素中?

javascript jquery dynamic

34
推荐指数
3
解决办法
5万
查看次数

使用带有if和else的标签<script>

我有一些像这样的脚本标签:

<script src="cordova-2.5.0.js"></script>
<script src="js/jquery-1.7.2.min.js"></script>
<script src="js/jquery.mobile-1.1.1.min.js"></script>
<script src="js/jquery.xdomainajax.js"></script>
<script src="js/xml2json.js"></script>
<script src="js/ZipPlugin.js"></script>
<script src="js/jquery-ui.min.js"></script>
<script src="js/jquery.ui.touch-punch.min.js"></script>
<script src="js/prefixfree.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

这是我使用phonegap为Android编写的应用程序,但我想在网络中使用代码.我不会全部用于网页.

有没有办法像在html中使用if else这样做:

if(anything) {
    <script src="cordova-2.5.0.js"></script>
    <script src="js/jquery-1.7.2.min.js"></script>
    <script src="js/jquery.mobile-1.1.1.min.js"></script>
    <script src="js/jquery.xdomainajax.js"></script>
    <script src="js/xml2json.js"></script>

    <script src="js/prefixfree.min.js"></script>
} else {
    <script src="js/ZipPlugin.js"></script>
    <script src="js/jquery-ui.min.js"></script>
    <script src="js/jquery.ui.touch-punch.min.js"></script>
}
Run Code Online (Sandbox Code Playgroud)

我是翻车机,请帮帮我.谢谢阅读!!!

编辑:

如果我想更改我的脚本标记:

<script src="js/prefixfree.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

变成这样:

<script src="http://smartphone.thnt.vn/VietGames/GhepTranhTu/Web/js/prefixfree.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

无论如何要做一个像这样的变量:

var key ="http://smartphone.thnt.vn/VietGames/GhepTranhTu/Web/"
Run Code Online (Sandbox Code Playgroud)

然后像这样在标签中使用:

<script src = "key + 'js/prefixfree.min.js'"></script> 
Run Code Online (Sandbox Code Playgroud)

html javascript jquery

7
推荐指数
2
解决办法
1万
查看次数

使用Promises使用JavaScript加载jQuery

之前的一个问题揭示了如何使用本机JavaScript加载jQuery.我已经成功地使用了那里答案的回调代码,在这里复制:

// Anonymous "self-invoking" function
(function() {
    // Load the script
    var script = document.createElement("SCRIPT");
    script.src = 'https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js';
    script.type = 'text/javascript';
    document.getElementsByTagName("head")[0].appendChild(script);

    // Poll for jQuery to come into existance
    var checkReady = function(callback) {
        if (window.jQuery) {
            callback(jQuery);
        }
        else {
            window.setTimeout(function() { checkReady(callback); }, 100);
        }
    };

    // Start polling...
    checkReady(function($) {
        // Use $ here...
    });
})();
Run Code Online (Sandbox Code Playgroud)

如何使用本机JavaScript Promises完成同样的事情

我问的原因是因为我突然需要链接早期的回调,这是一个混乱的问题.我希望Promise是一种更好的方式,我对使用加载器框架没有兴趣.

这是我到目前为止所得到的,但承诺总是被拒绝:

// This code doesn't work quite right.
// Poll for jQuery to …
Run Code Online (Sandbox Code Playgroud)

javascript jquery promise

6
推荐指数
1
解决办法
2421
查看次数

使用回退异步加载 jquery 核心

通过头中的性能优化和非阻塞脚本,我一直在尝试异步加载 jquery 本身。

我遇到了一个jQuery Loader脚本,它异步加载 jquery,然后捕获和排队 jquery 文档就绪调用。这似乎在大部分时间都有效,但并非总是如此。

因此,如果加载程序在 x 秒内未完成,我创建了一个回退来加载本地 jquery 版本。回退有效,但不完全。有些部分可能有效,有些则无效。

加载 jquery 加载器脚本后,到目前为止在 head 中调用的脚本:

<script type="text/javascript">
function loadScript(url)
{
    var head = document.getElementsByTagName('head')[0];
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.src = url;
    head.appendChild(script);
}

var fallback_timer = setTimeout(function() {
    loadScript('/path/to/local/js/jquery.js');
},5000);
jQl.loadjQ('//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js',function({clearTimeout(fallback_timer);});

</script>
Run Code Online (Sandbox Code Playgroud)

问题:

  1. 任何有 jQuery Loader (jQl) 经验的人都可以帮助解决它经常失败的问题?

  2. 谁能告诉我为什么在失败的情况下,只有我的其他一些 js 脚本可以工作,而有些却一直失败?

  3. 我非常愿意使用其他一些插件/脚本/方向来异步加载 jquery 核心。

澄清一下,我不是在考虑使用 jQuery 异步加载脚本,而是在支持加载 jquery 依赖脚本的同时异步加载 jquery 本身。

jquery asynchronous pagespeed

5
推荐指数
1
解决办法
1702
查看次数

如何将 jQuery 与 selenium execute_script 方法一起使用?

execute_script如果当前页面尚未使用 jQuery,如何将 jQuery 与 selenium方法一起使用?

例如:

from selenium import webdriver
driver = webdriver.Firefox()
driver.get(url)
driver.execute_script('$("#id").wrap("<h1></h1>")')
Run Code Online (Sandbox Code Playgroud)

我试过添加这样的脚本:

driver.execute_script(
"var jquery_script = document.createElement('script'); 
jquery_script.src = 'https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js';
document.findElementsByTag('head')[0].appendChild(jquery_script)"
)
Run Code Online (Sandbox Code Playgroud)

但是我收到错误消息,说 jquery_script 变量未定义。

javascript python jquery selenium

0
推荐指数
1
解决办法
2283
查看次数