相关疑难解决方法(0)

恢复console.log()

出于某种原因,Magento附带的原型框架(或其他JavaScript代码)正在取代标准的控制台功能,所以我无法调试任何东西.在JavaScript控制台中写下console我得到以下输出:

> console
Object
assert: function () {}
count: function () {}
debug: function () {}
dir: function () {}
dirxml: function () {}
error: function () {}
group: function () {}
groupEnd: function () {}
info: function () {}
log: function () {}
profile: function () {}
profileEnd: function () {}
time: function () {}
timeEnd: function () {}
trace: function () {}
warn: function () {}
Run Code Online (Sandbox Code Playgroud)

Google Chrome version 13.0.782.112在Linux上使用.

Prototype JavaScript …

javascript google-chrome prototypejs console.log

47
推荐指数
5
解决办法
2万
查看次数

JavaScript控制台登录Magento

我在Magento有一个自定义的phtml页面.据我所知,Magento使用jQuery和原型库.

例如,如果我需要外部jQuery/jQueryUI,我需要使用.noConflict()

但是,如果我想使用

console.log('Hello world');
Run Code Online (Sandbox Code Playgroud)

在Chrome 15控制台中,我没有得到任何响应.也尝试使用Firebug.

显然,与Magento JavaScript代码存在一些冲突.有什么解决方案吗?

javascript console logging conflict magento

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

动态插入的脚本标记未按正确顺序执行

以下是我的HTML代码片段:

...

<script src=".../jquery.min.js"></script>

<script id="foo">
    if (!window.jQuery) {
        var jquery = document.createElement("script");
        jquery.src = ".../jquery.min.js";
        var self = document.getElementById("foo");
        self.parentNode.insertBefore(jquery, self.nextSibling);
        console.log("haha");
    }
</script>

<script>
    console.log("hehe");
</script>

<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
Run Code Online (Sandbox Code Playgroud)

第一个脚本标记是jquery CDN.id为"foo"的脚本标记的目的是,如果CDN失败,它会在加载以下引导程序js文件之前加载jquery文件的本地副本.

但是,在bootstrap js文件之前不会以某种方式执行插入的jquery文件.我尝试console.log("wow")输入本地jquery文件.控制台的结果是"haha", "hehe", some error message from bootstrap js file, "wow".观察DOM,插入的jquery标记确实出现在"hehe"脚本之前,我想知道为什么它没有以正确的顺序执行,是否有更好的方法来实现我的目标?

html javascript jquery

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