2017-04-08 131 views
0

这令人沮丧!我不能让我的点击事件处理程序工作。我花了几个小时试图找出问题是什么,但失败了。为什么我的点击事件处理程序不工作?

下面是我的模板代码:

<template name="ViewStats"> 
<div class="tileMenu" > </div> 
</template> 

的tileMenu具有嵌入式图像,足够大到可以点击。 我甚至试图用更大的图像替换嵌入图像,希望增加可点击面积,但似乎没有任何区别。

以下是我的CSS:

.tileMenu{ 
    position: absolute; 
    left: 115px; 
    z-index: 2; 
    height: 49px; 
    background: url(images/tileMenu.png) no-repeat; 
    top: 1px; 
    display: block; 
    height: 24px; 
    margin-left: 1PX; 
    margin-top: 2px; 
    float: left; 
    width: 17px; 
    background-repeat: no-repeat; 
    background-position: right 4px top 3px; 
    background-size: 75% 75%; 
} 

而现在它不能火起来的事件handlar。 我在做什么错?

Template.ViewStats.events({ 

    'click .tileMenu': function (event) { 

     alert("You clicked tileMenu"); 
     } 
}); 

有人可以解释为什么我的警报功能无法启动?

在此先感谢!

+0

您要放置模板的位置? – winter

+0

@amaia在main.html中。与main.js中的事件相同的文件夹 – SirBT

回答

2

你的模板事件代码是好的,它应该工作。

因此,我认为你的实际事件没有发生的原因是因为你的点击没有注册到你所定位的div上。

这可能是由于div位置奇怪或位于另一个div之下。尝试删除所有样式并单击div。也请尝试检查元素以查看实际tileMenu div在您的页面上的位置。

暂时在div中添加一些内容作为视觉测试。所以你知道你点击的是div。例如:

<div class="tileMenu" > CLICK ME CLICK ME CLICK ME </div> 

我怀疑,一旦你删除的样式或定位的DIV是,点击它,你会看到你的警告射击。

1

没有内容的div很难点击。把一些内容放在那里,这样你就可以确保你真的点击了div。尝试添加文本和测试。或者尝试将图像放在实际的HTML中而不是背景

相关问题