调试器在页面加载时jquery等库中没有断点而暂停,警告消息显示脚本是黑盒子但具有讽刺意味的是调试器停在那里.
请建议我是否必须做除了黑盒子之外的事情,以防止库脚本中的调试器暂停
截图:

据我所知,使用供应商前缀的唯一原因是它们是由浏览器创建者引入的,以便在根据W3C完全实现之前发布新规范
但为什么每个浏览器都需要特定的供应商前缀.
如果我们看下面的css:
.box{
-webkit-box-shadow:0 0 1px #000;
-moz-box-shadow:0 0 1px #000;
-o-box-shadow:0 0 1px #000;
box-shadow:0 0 1px #000;
}
Run Code Online (Sandbox Code Playgroud)
为什么不能这样写
.box{
-vendor-box-shadow:0 0 1px #000;
box-shadow:0 0 1px #000;
}
Run Code Online (Sandbox Code Playgroud)
看到前缀的每个浏览器都以-vendor-自己的方式实现.这不仅使开发人员,而且对于浏览器创建者来说也很容易,因为像微软和歌剧受损的情况开始支持,-webkit-因为开发人员懒得使用-ms-而且-o-永远不会上升.如果是这种情况,-vendor-它适用于每个浏览器.
任何人都可以对此有所了解吗?
我想使用jquery而不是javascript 来实现html5拖放的w3schools EXAMPLE.
这是我在jquery JSFIDDLE中的实现
我只是将事件的html内联声明更改为jquery on()方法,保持其他所有内容相同.
我不明白为什么当我在网上看到很多片段时,jquery不会识别像drop dragstart这样的事件.
HTML:
<div id="div1"></div>
<img id="drag1" src="http://www.w3schools.com/html/img_logo.gif" draggable="true" width="336" height="69">
Run Code Online (Sandbox Code Playgroud)
JQUERY:
$(document).ready(function(){
$("#div1").on("dragover",function(e){
e.preventDefault();
});
$("#drag1").on("dragstart",function(e){
e.dataTransfer.setData("Text",ev.target.id);
});
$("#div1").on("drop",function(e){
e.preventDefault();
var data=e.dataTransfer.getData("Text");
e.target.appendChild(document.getElementById(data));
});
});
Run Code Online (Sandbox Code Playgroud) 我有一个工厂方法有$ http(异步任务),所以我使用$ q promise并发生以下错误TypeError: object is not a function@line:return $ q(funtion ....)
使用Promise API编写:
service.fetch = function(query) {
return $q(function(resolve, reject){
$http({ url: srcset[query], method: 'GET'}).success(function(db){
resolve(db);
});
});
};
Run Code Online (Sandbox Code Playgroud)
但如果使用Deferred API编写:
service.fetch = function(query) {
var deferred = $q.defer();
$http({ url: srcset[query], method: 'GET'}).success(function(db){
deferred.resolve(db);
});
return deferred.promise;
};
Run Code Online (Sandbox Code Playgroud)
它工作正常
我写的完全如https://docs.angularjs.org/api/ng/service/ $ q中所述
任何人都可以指出我哪里出错了.