小编max*_*ax7的帖子

为什么我得到TypeError:obj.addEventListener不是函数?

这是我的代码:

function addEvent( obj, type, fn ) {
  if ( obj.attachEvent ) {
    obj['e'+type+fn] = fn;
    obj[type+fn] = function(){obj['e'+type+fn]( window.event );}
    obj.attachEvent( 'on'+type, obj[type+fn] );
  } else
    obj.addEventListener(type, fn, false);
}

function alertWinner(){
    alert("You may be a winner!");
}

function showWinner (){
    var aTag = document.getElementsByTagName("a");
    addEvent(aTag, 'click', alertWinner);
}

showWinner();
Run Code Online (Sandbox Code Playgroud)

基本上,我正在使用firebug控制台并尝试在点击任何标签时弹出警报.

我看不出导致这个问题无法解决的问题,并且在我的问题标题中给出了错误(在firebug中查看).任何人?

javascript javascript-events

21
推荐指数
2
解决办法
7万
查看次数

Aptana警告不应该使用脚本和链接标签

我正在运行Aptana Studio 3,版本:3.1.3.201205292243,Win7 64bit,我注意到在上次更新后,Aptana警告我(垂直注释)我应该"修剪空"标签,但这些是正常的脚本标记链接外部js文件,如下所示:

    <!-- Replace favicon.ico & apple-touch-icon.png in the root of your domain and delete these references -->

    <link rel="shortcut icon" href="/favicon.ico" />
    <link rel="apple-touch-icon" href="/apple-touch-icon.png" />
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
    <script src="js/jquery.lightbox-0.5.js"></script>
    <script src="js/flickrapi3.js"></script>
    <link rel="stylesheet" href="css/jquery.lightbox-0.5.css" />
    <link rel="stylesheet" href="css/flickrStyle.css" />
Run Code Online (Sandbox Code Playgroud)

此外,它还警告我链接标记中的rel属性具有"无效值",但这些是HTML5模板Aptana捆绑包中包含的默认值.

我已经检查了首选项>编辑器>文本编辑器,我看到了注释设置,但是我看不出在哪里可以完全解决这些问题.我完全错过了什么吗?这些已知的错误?我该如何纠正这些问题?

aptana aptana3

12
推荐指数
3
解决办法
8272
查看次数

制作事件的标记目标,而不是img

这可能是javascript 101,但我无法找到解决方案.考虑以下小提琴

我的js使用类在a标签上设置click事件 .show-modal

然而我的控制台日志显示事件目标实际上是img标记.出于各种原因,我需要将事件目标作为标记.

关于这一点的两件事对我来说是一个挑战:

  1. 我成功地将事件目标作为标记的唯一方法是将img标记分离到它之外(即使其成为标记的兄弟,而不再是子标记)然后设置标记位置:绝对,给它img的尺寸和位置.我认为这种方法必须是最不可取的,但我怎么能实现我的目标呢?

  2. 让我感到困惑的是,事件目标如何与我附加click事件的元素不同?它们不应该是一样的吗?如果它们应该是相同的,如果接收click事件的元素不是我将click事件附加到的那个元素,我的函数如何被调用?

javascript css jquery html5

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

为什么公共Web服务返回200 OK但没有JSON

我试图调用此Web服务: http://www.civicapps.org/datasets/restaurant-inspections

这是我的代码:

<script>
            $(document).ready(function() {

                function showInspections() {
                    var data = $.ajax({
                                type : 'GET',
                                url : '//api.civicapps.org/restaurant-inspections/',
                                async : false,
                                dataType : 'json',
                                success: function(data){
                                    if(data.status == "ok"){
                                    alert(data);
                                    }
                                }
                            });     
                        }
                showInspections();
            });
        </script>
Run Code Online (Sandbox Code Playgroud)

Firebug Net> XHR显示"200状态正常",但JSON数据没有响应.同样,"控制台"选项卡显示相同的GET请求和状态,但其文本为红色.

问题:

  • 我是否由于跨域问题而未能收到JSON中的响应数据,即数据应该以JSONP而不是JSON发送?如果是这样,假设不会在JSONP中发送响应,是否有办法完全解决这个问题?
  • Firebug控制台中的红色文字表示什么?

javascript ajax jquery

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

用于IE或其他东西的CSS Hack?

请考虑以下CSS规则:

.myClass {
    display: inline-block;
    *
    zoom: 1;
    padding: 12px;
    margin-bottom: 0;
    font-size: 16px;
    line-height: 35px;
    text-align: left;
    *
    background-color: #ccc;
    *
    border: 0;
    border-bottom-color: #eee;
    -webkit-border-radius: 7px;
    -moz-border-radius: 7px;
    border-radius: 7px;
    *
    font-weight: bold;
    font-size: 10px;
}
Run Code Online (Sandbox Code Playgroud)

我意识到星号通常被用作IE的某些版本的黑客,但通常,这种用法以不同的方式出现,如下所示:http://bit.ly/QFRPrQ 我发现有关使用的所有回复CSS中的星号似乎并未解决我在示例中的使用方式.

这只是以特定方式或其他方式使用的IE黑客吗?

html css html5 css3

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

括号[] vs.访问对象属性时的语法?

请考虑以下代码:

    var friends = {
    bill: {
        firstName: "Bill",
        lastName:"William",
        number: "212-555-1212",
        address: ['Main Street', 'Yakama', 'WA','90012']
    },
    steve: {
        firstName: "Steve",
        lastName: "Steven",
        number: "818-555-1212",
        address: ['Any Street', 'Eureka', 'CA','90013']
    },
    betty: {
        firstName: "Betty",
        lastName: "Draper",
        number: "503-555-1212",
        address: ['Your Street', 'Madison', 'WI','90014']
    }
};

var search = function(name){
    for(var prop in friends){
        if(friends[prop].firstName === name){
           console.log(friends[prop]);
           return friends[prop];
        }
    }
};
Run Code Online (Sandbox Code Playgroud)

我的问题是关于这一部分:

if(friends[prop].firstName === name)
Run Code Online (Sandbox Code Playgroud)

我想了解[prop]周围括号的用法以及为什么在这种情况下它们是必要的.我非常熟悉点语法表示法,但不熟悉这些括号的使用.

关于我的问题是否重复:我之前提出的问题和提出相同的问题实际上是一个偏好问题,即使用点语法与括号表示法有什么好处.我的问题本质上更为基础,并问为什么要使用它,更具体地说,为什么在我所展示的特定情况下它是必要的.此外,我没有看到其他帖子回答了我更基本的问题.

对那些嘲笑我并投票支持我的人的一句话,称我懒惰,没有搜索网络或转向右边:我在网上搜索答案,但有大量的网页有各种问题相关但不完全或根本没有回答我的问题.此外,如果您没有使用正确的短语或关键字搜索网络,您可能永远找不到您正在寻找的答案.我不熟悉JS中的这种特殊语法,所以也许我没有用正确的短语或关键词进行搜索.

最重要的是,我认真地问了这个问题,以便让自己更好地成为一名程序员.如果我唯一在这里失败的是你们中的一些人认为这是学习或不知道这一切的主要编程罪,那么在这里发表评论的某些人有小问题和傲慢的问题,这不是我的问题.

也就是说,我非常感谢那些真诚地尝试回答我的问题的人,非常感谢.

javascript

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

标签 统计

javascript ×4

css ×2

html5 ×2

jquery ×2

ajax ×1

aptana ×1

aptana3 ×1

css3 ×1

html ×1

javascript-events ×1