标签: javascript-events

如何使用angularjs在传单标记上触发事件

我使用angular-leaflet-directive来显示填充了多个标记的地图,我有一个表,用户可以从中选择其中一个标记.我知道如何居中(在地图上显示)在表格中点击的一个标记,但我想打开标记的弹出消息.我知道我需要在地图上发出"点击"事件,但我不明白如何以"有角度的方式"进行.任何建议都将深表感谢.谢谢.

javascript javascript-events angularjs leaflet

1
推荐指数
1
解决办法
2684
查看次数

如何在JQuery中设置事件?

如何在JQuery中使用事件?

我有2个项目,在这两个项目中,我使用不同的方式使用JQuery设置事件.在第一个项目中,我使用如下:

$("#someID").click(SomeFunction);
Run Code Online (Sandbox Code Playgroud)

在第二个项目中我使用如下:

$(document).on("click", "#someID", SomeFunction);
Run Code Online (Sandbox Code Playgroud)

如果我尝试在第二个项目中使用第一种方式,它将无法工作.我更喜欢第一种方式.有什么不同吗?

javascript jquery javascript-events

1
推荐指数
2
解决办法
163
查看次数

仅在单击元素时触发事件,而不在其子元素上触发事件

如果我将click处理程序绑定到body元素,当我单击页面上的任何内容时,将触发事件.我可以检查event.target每次点击:

$("body").on("click", function(event) {
  if (event.target.tagName == "BODY") {
    ...
  }
});
Run Code Online (Sandbox Code Playgroud)

但这似乎有点矫枉过正.有没有办法只在单击身体的空白区域时触发事件?

javascript jquery javascript-events

1
推荐指数
1
解决办法
94
查看次数

是否有名为bind的JavaScript或jQuery事件?

我找到了一个代码片段,它将一些事件绑定到一个对象,其中一个事件被命名为"bind".真的有这样的事吗?环顾四周,我找不到一个.

jQuery(".some-selector").on("keyup bind cut copy paste", function() { ... });
Run Code Online (Sandbox Code Playgroud)

我认为编写该代码的人是个错误......这是正确的吗?

javascript jquery javascript-events

1
推荐指数
1
解决办法
229
查看次数

jQuery'.click(callback)'阻止默认事件

我试图阻止双击表单按钮,禁用该元素几秒钟.

<form action="#" method="POST">
    <input type="text" />
    <input type="password" />
    <button class="myButton" type="submit">Send</button>
</form>


var that = this;
this.element = $(".myButton");
this.element.click(function(e) {
    this.element.prop("disabled", true);
    window.setTimeout(function() {
        that.element.prop("disabled", false);
    }, 2000);
});
Run Code Online (Sandbox Code Playgroud)

它成功启用/禁用,但.click()功能的使用阻止(自动?O_o)事件的传播,并且页面不遵循表单动作属性中的链接.

注意我正在尝试将行为添加到以前完美运行的表单按钮(POST到 aciton链接).此外,启用/禁用工作也很完美(无论我在上述代码的调整中可能出现的最终错误).

PS - 任何解决方案必须是跨浏览器并与IE8兼容.

javascript forms jquery javascript-events event-propagation

1
推荐指数
1
解决办法
174
查看次数

与d3可重复使用模式的交互性

在D3中:我正在尝试使用可重用的图表模式来实现图表,这允许我添加在实际图表之外处理的事件.例如,我有一个简单的条形图,我可以点击每个单独的条形图.现在,我希望能够在创建图表实例的位置处理它,而不仅仅是处理图表组件中的click事件.例如,我想编辑与单击的条形元素对应的数据,或者我想根据我单击的条的位置更新某个其他元素的位置.为了使图表组件尽可能模块化和独立,我不希望在其中完成某些任务.

我提出了一个非常直接的解决方案,但我觉得必须有一个更好的解决方案.这样我就必须考虑外界可能感兴趣的每一个可能的事件.JSFiddle

function clickHandler(d, i) {
  // do something with the element/event/data
}

var svg = d3.select('#container')
  .append('svg');

var myChart = chart()
    .onClick(clickHandler);

svg.append('g')
  .datum(data)
  .call(chart);

function chart() {
  var onClick = function() {};

  function _chart(selection) {
    selection.each(function(d, i) {

      selection.selectAll('rect')
        .data(d)
        .enter()
        .append('rect')
        .attr('x', 0)
        .attr('y', function(d, i) {return i * 11;})
        .attr('width', function(d, i) {return d;})
        .attr('height', 10);
        .on('click', _onClick);

    });
  }

  function _onClick(d, i) {
    d3.select(this)
      .attr('fill', 'red');

    onClick(d, i);
  }

  _chart.onClick = function(_) …
Run Code Online (Sandbox Code Playgroud)

javascript charts event-handling javascript-events d3.js

1
推荐指数
1
解决办法
505
查看次数

如何在显示或隐藏Leaflet LayerGroup时收到通知?

我想在用户单击图层控件中的"城市"复选框时收到通知 - 该图标控件显示或隐藏链接示例中的城市标记.这是一个可以玩的JSFiddle.

宣传单截图

我看到LayerGroup从FeatureGroup派生了一些事件.如果我错了请纠正我:据我所知,显示和隐藏标记与layeradd和layerremove不一样?!

该input元素不能id绑定到:

<label>
    <input class="leaflet-control-layers-selector" type="checkbox" checked="">
    <span> Cities</span>
</label>
Run Code Online (Sandbox Code Playgroud)

如何切换标记的可见性时如何通知?

javascript javascript-events onclicklistener leaflet

1
推荐指数
1
解决办法
1279
查看次数

触摸板上的Chrome点击会触发mouseleave

最近,我的网站开始在Chrome中非常奇怪地工作.我发现在Chrome中,现在点击触摸板(自最近的更新?)会触发两个事件 - click和mouseleave.

<div id="tap">HOVER, TAP or CLICK</div>
<script>
tap.addEventListener("mouseleave",function(){alert("mouseleave");});
tap.addEventListener("click",function(){alert("click");});
</script>
Run Code Online (Sandbox Code Playgroud)

这是JSFiddle:

到目前为止,似乎此问题仅适用于Google Chrome.在FF和Yandex(以铬为基础)的假鼠栏中不会发射.单击按钮(鼠标或触摸板按钮)也可以正常工作 - 没有鼠标.

我怎样才能防止这个鼠标悬停?或者,也许,有一种方法可以从真正的鼠标中分辨出一个tap-mouseleave?

javascript google-chrome javascript-events mouseleave touchpad

1
推荐指数
1
解决办法
460
查看次数

你可以从一个冒泡到身体的元素中删除$ .on()添加的事件监听器吗?

鉴于这样的事情$('body').on('click', 'a', someReference);是否有任何方法可以删除特定用途的侦听<a>器$.off()?

javascript jquery javascript-events

1
推荐指数
1
解决办法
31
查看次数

使功能同步工作(等待本地事件被触发)

我遇到了JavaScript逻辑问题.当我们有一个需要来自事件处理程序的数据来生成结果的函数时,是否可以将该数据恢复功能?例如,如果我们调用Image()object或FileReader()inside并等待其load事件被触发以生成正确的返回结果.

简单的例子:

function imageSize(filename) {
  funcResult = false;
  var img = new Image();
  img.onload = function() {
    myResult = { 
      width: img.width,
      height: img.height
      }
    }
  img.src = filename;
  return funcResult;
}
Run Code Online (Sandbox Code Playgroud)

当然,它不起作用,因为load在函数执行后异步发生火灾.但是有一些解决方法可以使功能停止和收听,这是我的主要目标.

或者更复杂的例子(也出于同样的原因也无法工作).

function getImageSize(file) {
  res = false;
  if (window.FileReader) {
    var fileReader = new FileReader();
    fileReader.onload = function() {
      var img = new Image();
      img.onload = function() {
        res = {
          width  : img.width,
          height : img.height …
Run Code Online (Sandbox Code Playgroud)

javascript synchronous javascript-events

1
推荐指数
1
解决办法
1962
查看次数