event.target 中未在 Firefox 中定义,在 IE 中出现小错误
event.target in not defined in Firefox and minor error in IE
我已经在Firefox上阅读了大约15个不同的堆栈溢出问题,这些问题与事件有关。它们与我的职能并不密切相关,但我认为这是一个直接的问题。我已经尝试了所有似乎对他们的问题有用的方法,但他们都失败了。
我的问题在Firefox中,没有任何反应,这是由我拥有代码的顺序引起的。顺序非常重要,否则我会导致不需要的多个按钮附加。我至少理解为什么它不基于单击函数添加和删除类。我不明白的是我添加了var event = event || window.event;
并尝试了if(!event) event = window.event;
.他们似乎什么也没做,所以我甚至尝试把window.event放在我刚刚事件发生的任何地方,这也不起作用。
我在IE中的问题,这个至少允许我单击并展开文章,这很棒,但是一旦单击它就不会附加我的按钮。这个不是主要的,因为关闭文章按钮不是生死。
我的 jQuery
function newsArticle() { // Articles Functionality
$('.article').on('click', function() {
var self = this;
var button = $('<span />', {
'class': 'close',
text: 'Click to minimize article',
on: {
click: function (e) {
e.stopPropagation();
$(self).stop(true).toggleClass('fullArticle article');
$(this).remove();
}
}
});
if(!event) event = window.event;
if($(event.target).is('.article')) {
$(this).append(button);
}
else if($(event.target).parents().is('.article')) {
$(this).append(button);
}
$(this).removeClass('article').addClass('fullArticle');
});
}
newsArticle();
答
function newsArticle() { // Articles Functionality
$('.article').on('click', function(e) {
var self = this;
var button = $('<span />', {
'class': 'close',
text: 'Click to minimize article',
on: {
click: function (e) {
e.stopPropagation();
$(self).stop(true).toggleClass('fullArticle article');
$(this).remove();
}
}
});
if($(e.target).is('.article')) {
$(this).append(button);
}
else if($(e.target).parents().is('.article')) {
$(this).append(button);
}
$(this).removeClass('article').addClass('fullArticle');
});
}
newsArticle();
斯菲德尔
如果 jsfiddle 没有显示问题,则在实时站点上查看 -->站点
只需一直向下滚动,在页脚上方有4个选项卡,单击"在新闻中"。
如果您需要其他任何东西,请告诉我,很抱歉提出这个问题,但我无法找到有效的答案。
当你使用jQuery时,你不需要做跨浏览器检查(if(!event) event = window.event;
等(,因为jQuery会为你做这件事。但是,您应该接受事件作为事件处理程序中的参数:
$('.article').on('click', function(event) {
我喜欢使用e
作为约定,以避免混淆:
$('.article').on('click', function(e) {
相关文章:
- 为什么我得到错误IE修剪方法是't支持
- IE中关于ZK和JavaScript集成的一些错误
- 任何人都知道IE7设置或更新/补丁,它可以防止IE因为jquery错误而无法加载页面
- IE上的新XMLHttpRequest()出现JS Ajax未指定错误
- 如何修复FF和IE中的Javascript无效日期错误
- IE 9 BHO插件.加载外部JS文件时出现错误SCRIPT1014
- QUnit 测试错误与 IE(Internet Explorer)
- 使用RecordRTC录制的WebRTC视频在IE和Safari中显示错误
- IE中的Javascript命名空间抛出错误
- 仅在 IE 中使用 jQuery 发布数据时出现错误请求错误
- Javascript 错误:对象在 IE 浏览器中不支持此属性或方法
- Addeventlistener 已转换为 IE.也许是另一个错误
- Angular JS错误:仅在IE 10和IE 11中出现[$rootScope:infdig]
- IE错误:无法设置属性'的值;样式':对象为null或未定义
- 索引在IE中导致错误;在其他浏览器中工作
- Javascript“构造函数”属性中的错误 - IE 8
- Javascript 错误:“IE 中的”预期标识符、字符串或数字”
- Javascript运行时错误IE 11
- FF & SWFObject错误IE,在Chrome中工作良好
- Microsoft JScript运行时错误:IE中的Dropbox.js被拒绝访问