Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/450.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 当div未滚动时获取回调_Javascript_Html_Angular_Events - Fatal编程技术网

Javascript 当div未滚动时获取回调

Javascript 当div未滚动时获取回调,javascript,html,angular,events,Javascript,Html,Angular,Events,我试图在angular组件中模仿android的可扩展工具栏 我有html代码,比如 <div (scroll)="someScroll($event)"> <div class="toolbar"></div> <div class="body"></div> </div> 工具栏div的高度为70px,剩余高度由body div确定。由于外部div没有任何溢出的内容,因此我没有收到任何滚动事件回调,因此我启

我试图在angular组件中模仿android的可扩展工具栏

我有html代码,比如

<div (scroll)="someScroll($event)">
  <div class="toolbar"></div>
  <div class="body"></div>
</div>

工具栏div的高度为
70px
,剩余高度由body div确定。由于外部div没有任何溢出的内容,因此我没有收到任何滚动事件回调,因此我启动了工具栏div的扩展

我尝试了鼠标滚轮事件,我得到了回调,但有了这些数据,我无法得到任何东西。同样在mdn中,它被写入
车轮
事件,但不推荐使用


那么,我应该如何继续?如果您有任何来源,请共享它,以便我可以阅读。

您需要的是
指令
,它可以将鼠标
向上推送事件/鼠标向下推送事件值捕获到控制器中

HTML:

   <h1>Wheel Directive Demo
    <div wheel style="height:1000px;background-color:green">
        <input type="text" value=""/>
    SCROLL MOUSE
   </div>
在AppModule.ts中:

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';

import { AppComponent } from './app.component';
import { HelloComponent } from './hello.component';
import { WheelDirective } from './wheel.directive'
@NgModule({
  imports: [BrowserModule, FormsModule],
  declarations: [AppComponent, HelloComponent, WheelDirective],
  bootstrap: [AppComponent]
})
export class AppModule { }
请查找正在工作的StackBlitz示例


您需要的是
指令
,它可以将那些鼠标
向上旋转事件/鼠标向下旋转事件值捕获到控制器中

HTML:

   <h1>Wheel Directive Demo
    <div wheel style="height:1000px;background-color:green">
        <input type="text" value=""/>
    SCROLL MOUSE
   </div>
在AppModule.ts中:

import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';

import { AppComponent } from './app.component';
import { HelloComponent } from './hello.component';
import { WheelDirective } from './wheel.directive'
@NgModule({
  imports: [BrowserModule, FormsModule],
  declarations: [AppComponent, HelloComponent, WheelDirective],
  bootstrap: [AppComponent]
})
export class AppModule { }
请查找正在工作的StackBlitz示例


wheelDelta已从wheelevent中删除,您必须切换到deltaY/deltaX

wheelDelta已从wheelevent中删除,您必须切换到deltaY/deltaX

我不明白您想在这里显示什么?我指的是输出。在指令
onmouseheel(event)
event中,所有相关的鼠标滚轮值都可以captured@Sela你能解释一下你的答案对我有什么帮助吗?我也可以在组件的模板中捕获轮子事件,指令和那个有什么不同?我不明白你们想在这里显示什么?我指的是输出。在指令
onmouseheel(event)
event中,所有相关的鼠标滚轮值都可以captured@Sela你能解释一下你的答案对我有什么帮助吗?我也可以在组件的模板中捕获轮子事件,指令和那个有什么不同?