我是 angular2 的新手,我一直在尝试创建一个可调整大小的 div(垂直)。但我无法做到这一点。我使用指令尝试过的
这是我的指令
import { Directive, HostListener, ElementRef, Input } from '@angular/core';
@Directive({
selector: '[appNgxResizer]'
})
export class NgxResizerDirective {
constructor(private el: ElementRef) {
}
@HostListener('mousemove', ['$event']) resize(e) {
this.el.nativeElement.parentNode.style.height = (e.clientY - this.el.nativeElement.parentNode.offsetTop) + 'px';
event.preventDefault();
}
@HostListener('mouseup', ['$event']) stopResize(e) {
event.preventDefault();
}
}
这是我尝试过的 stackblitz https://stackblitz.com/edit/angular-text-resizable-q6ddyy
我想点击抓取来调整 div 的大小。像这样的东西 https://jsfiddle.net/zv2ep6eo/ 。
谢谢。
原文由 Sibiraj 发布,翻译遵循 CC BY-SA 4.0 许可协议
我想你错过了保留旧高度值的部分,加上检查
mouseup
的状态,还要听mousedown
。我没有在下面的示例中使用指令,但它会很复杂。Stackblitz 示例
打字稿:
HTML