发表于: 2017-05-01 22:51:59
1 1008
今天完成的事情:
终于把论文写完了,学习了一下HTML5
明天计划的事情:
制作答辩的ppt,肝JS8
遇到的问题:
老师让我参考文献写中国的书,他说全是外国人的书看着不舒服。中国的前端书籍有吗???
收获:学习了HTML5的拖放:
- DataTransfer 对象:退拽对象用来传递的媒介,使用一般为Event.dataTransfer。
- draggable 属性:就是标签元素要设置draggable=true,否则不会有效果,例如:
<div title="拖拽我" draggable="true">列表1</div>
- ondragstart 事件:当拖拽元素开始被拖拽的时候触发的事件,此事件作用在被拖曳元素上
- ondragenter 事件:当拖曳元素进入目标元素的时候触发的事件,此事件作用在目标元素上
- ondragover 事件:拖拽元素在目标元素上移动的时候触发的事件,此事件作用在目标元素上
- ondrop 事件:被拖拽的元素在目标元素上同时鼠标放开触发的事件,此事件作用在目标元素上
- ondragend 事件:当拖拽完成后触发的事件,此事件作用在被拖曳元素上
- Event.preventDefault() 方法:阻止默认的些事件方法等执行。在ondragover中一定要执行preventDefault(),否则ondrop事件不会被触发。另外,如果是从其他应用软件或是文件中拖东西进来,尤其是图片的时候,默认的动作是显示这个图片或是相关信息,并不是真的执行drop。此时需要用用document的ondragover事件把它直接干掉。
- Event.effectAllowed 属性:就是拖拽的效果。
复习了一下angular的知识点
app.controller('editCtrl',['$http','$location','$rootScope','$scope','$state','$stateParams',])
function($http, $location, $rootScope, $scope, $state, $stateParams){
// 上边声明添加显示的依赖注入,是为了防止,压缩(如UglifyJS)时改变function里的参数名,造成功能引用失败。推荐r.js压缩
// do something...
}
获取路由的参数
$stateParams.id // #/camnpr/editCtrl?id=1
跳转路由状态
$state.go('camnpr.appManager'); // 跳转后的URL: #/camnpr/appManager
$location.path('camnpr/appManager'); // 功能也是跳转
ui-router扩展的跳转方式
<a ui-sref="camnpr.appManager">跳转</a> // 需要angular-ui-router
在ng-repeat里显示序号: $index // 这个是从0计数的。
get请求
$http({
method: 'get',
url: 'http://camnpr.com/getAPI/',
params:{id: 1},
headers: {'x-camnpr-uid': '1000'}//可以加入任意的头信息
});
post请求
$http({
method: 'post',
url: 'http://camnpr.com/postAPI/',
data:'id=1&referrer=camnpr.com', // 这里是字符串,格式请注意,同时我们可以使用 $.param({id:1, referrer: 'camnpr.com'})来获取等价的形式。
// Form Data获取方式 Request.Form['id'] 。
//这是加'Content-Type': 'application/x-www-form-urlencoded',的功劳。
// 若不加'Content-Type',则:Request Payload:id=1&referrer=camnpr.com
// data: {id: 1, referrer: 'camnpr.com'}, // 是对象,那么 Form Data的数据是: {"id":1,"referrer":"camnpr.com"}:
headers: {'Content-Type': 'application/x-www-form-urlencoded', 'x-camnpr-uid': '1000'}
});
根据selector获取元素
angular.element('.is_select') // [<input type="checkbox" value="1" class="is_select">]
循环获取并操作
angular.forEach(document.getElementsByClassName('is_select'), function(item, index){
if(item.checked){
ids+=item.value+',';
}
});
ng-click里带当前的a,button等的事件
<button ng-click="camnpr.submitAdd($event)" class="btn btn-primary ladda-button" data-style="zoom-in"><span class="ladda-label">提交</span></button> // $event.target.currentTarget
评论