目前在用angularjs做项目,modal用的是ui-bootstrap的,但是那个弹出层需要扩展的太多了,比如居中显示,尤其不能接受的是无法拖动,忘高人指点一二~~
自己写一个吧,又不难
大兄弟,要是我自己能写出来我就不在这里提问了,我是想能不能在ui-bootstrap上直接扩展,网上看到了别人封装的一个指令,但是自己弄了半天也没效果。
http://www.cnblogs.com/bobo-show/p/5106204.html
兄弟能指点下否。卡了好久这个问题
@抱着树死劲摇:
element.on('mousedown', function(event) {
// Prevent default dragging of selected content
event.preventDefault();
startX = event.pageX - x;
startY = event.pageY - y;
$document.on('mousemove', mousemove);
$document.on('mouseup', mouseup);
});
function mousemove(event) {
y = event.pageY - startY;
x = event.pageX - startX;
element.css({
top: y + 'px',
left: x + 'px'
});
}
在鼠标按下的时候,记录原来窗体的位置和鼠标位置,然后在鼠标移动的时候,记录鼠标的偏移量,用这个偏移量来重新计算窗体的位置。 这样就可以了
我猜你失败的原因是 不能用style来获取内联样式和外部样式,要用getComputeStyle()
@胖乎乎的小奶油: 我是把别人那段代码直接放在了ui-bootstrap-tpls.js创建angular.module('ui.bootstrap.modal', ['ui.bootstrap.transition'])模块的后面,也不知道这样对不对,一个人学angular真心累
@抱着树死劲摇: 你去看看 angularJs自定义指令吧,主要是三个参数, scope,表示当前数据域,elem表示当前元素,