2012-12-10 47 views
1

這是我的第一篇文章,我不是程序員,只是有人爲我正在處理的項目每隔一段時間拼湊來自網絡的代碼。未捕獲的引用錯誤:未定義jquery

我試圖在我正在處理的網站上實現滾動Twitter選取框,但遇到了「未捕獲的引用錯誤:Jquery未定義」錯誤。

我認爲這是因爲jquery沒有被正確的包含或包含失敗。我已經試過如下:

  1. 包括jQuery的從不同的URL,以及託管在本地
  2. 改變的包括在我的發言順序,這樣的Jquery至上

我發現SO上的一些類似的線程,但他們都沒有幫助解決這個問題。

這裏是我的代碼:

<head> 
<meta charset="UTF-8" /> 
<title>UnBox 2013 : Venues</title> 
<link rel="stylesheet" type="text/css" media="all" href="/Volumes/Boot/Users/siddharthnair/Dropbox/UnBox 2013 Build/resonate/style.css" /> 
<link href='http://fonts.googleapis.com/css?family=Lekton:400,400italic,700' rel='stylesheet' type='text/css'> 
<link href='http://fonts.googleapis.com/css?family=Titillium+Web:400,600,400italic,700' rel='stylesheet' type='text/css'> 
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js'/> 
<script src='/Volumes/Boot/Users/siddharthnair/Dropbox/UnBox 2013 Build/resonate/jquery.marquee.js'/> 


<script type='text/javascript'> 

var Tweetstream = { 
init: function() { 
this.insertLatestTweets('unboxfestival'); 
}, 
insertLatestTweets: function (username) { 
var limit = 5; // How many feeds do you want? 
var url = 'https://api.twitter.com/1/statuses/user_timeline.json?screen_name=' + username + '&count=' + limit + '&callback=?'; 

$.getJSON(url, function (data) { 
    var html = '<marquee behavior="scroll" scrollamount="1" direction="left">'; 

    for (var i in data) { 
    html += '<a href="http://twitter.com/' + username + '#status_' + data[i].id_str + '">' + data[i].text + ' <i>' + Twitter.daysAgo(data[i].created_at) + '</i></a>'; 
    } 

    html += '</marquee>'; 

    $('.tweetstream p').replaceWith(html); 

    Twitter.fancyMarquee(); 
}); 
}, 

fancyMarquee: function() { 
$('.tweetstream marquee').marquee('pointer') 
    .mouseover(function() { 
    $(this).trigger('stop'); 
    }) 
    .mouseout(function() { 
    $(this).trigger('start'); 
    }) 
    .mousemove(function (event) { 
    if ($(this).data('drag') == true) { 
    this.scrollLeft = $(this).data('scrollX') + ($(this).data('x') - event.clientX); 
    } 
    }) 
    .mousedown(function (event) { 
    $(this).data('drag', true).data('x', event.clientX).data('scrollX', this.scrollLeft); 
    }) 
    .mouseup(function() { 
    $(this).data('drag', false); 
    }); 
}, 

daysAgo: function (date) { 
// TODO: Fix date for IE... 
if ($.browser.msie) { 
    return '1 day ago'; 
} 

var d = new Date(date).getTime(); 
var n = new Date().getTime(); 

var numDays = Math.round(Math.abs(n - d)/(1000 * 60 * 60 * 24)); 
var daysAgo = numDays + ' days ago'; 

if (numDays == 0) { 
    daysAgo = 'today'; 
} 
else if (numDays == 1) { 
    daysAgo = numDays + ' day ago'; 
} 

return daysAgo; 
} 
}; 

Tweetstream.init(); 
</script> 
</head> 

我希望這不是垃圾郵件,如果有在這裏一個線程,你認爲答案的問題,請隨時只是點我朝着正確的方向發展。

大部分代碼都來自這裏:http://andreaslagerkvist.com/archives/2011/06/24/how-to-create-a-scrolling-twitter-feed-using-jquery/

+2

順便說一句這是** ** jQuery的,而不是jQuery的 –

+0

是當然的,你說得對。我很抱歉,我認爲我的菜單正在顯示。 – user1891700

回答

0

添加jQuery腳本標籤第一和jQuery代碼應該是的document.ready

<head> 
<meta charset="UTF-8" /> 
<title>UnBox 2013 : Venues</title> 
<link rel="stylesheet" type="text/css" media="all" href="/Volumes/Boot/Users/siddharthnair/Dropbox/UnBox 2013 Build/resonate/style.css" /> 
<link href='http://fonts.googleapis.com/css?family=Lekton:400,400italic,700' rel='stylesheet' type='text/css'> 
<link href='http://fonts.googleapis.com/css?family=Titillium+Web:400,600,400italic,700' rel='stylesheet' type='text/css'> 
<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js'/> 
<script src='/Volumes/Boot/Users/siddharthnair/Dropbox/UnBox 2013 Build/resonate/jquery.marquee.js'/> 


<script type='text/javascript'> 
$(document).ready(function() { 
var Tweetstream = { 
init: function() { 
this.insertLatestTweets('unboxfestival'); 
}, 
insertLatestTweets: function (username) { 
var limit = 5; // How many feeds do you want? 
var url = 'https://api.twitter.com/1/statuses/user_timeline.json?screen_name=' + username + '&count=' + limit + '&callback=?'; 

$.getJSON(url, function (data) { 
    var html = '<marquee behavior="scroll" scrollamount="1" direction="left">'; 

    for (var i in data) { 
    html += '<a href="http://twitter.com/' + username + '#status_' + data[i].id_str + '">' + data[i].text + ' <i>' + Twitter.daysAgo(data[i].created_at) + '</i></a>'; 
    } 

    html += '</marquee>'; 

    $('.tweetstream p').replaceWith(html); 

    Twitter.fancyMarquee(); 
}); 
}, 

fancyMarquee: function() { 
$('.tweetstream marquee').marquee('pointer') 
    .mouseover(function() { 
    $(this).trigger('stop'); 
    }) 
    .mouseout(function() { 
    $(this).trigger('start'); 
    }) 
    .mousemove(function (event) { 
    if ($(this).data('drag') == true) { 
    this.scrollLeft = $(this).data('scrollX') + ($(this).data('x') - event.clientX); 
    } 
    }) 
    .mousedown(function (event) { 
    $(this).data('drag', true).data('x', event.clientX).data('scrollX', this.scrollLeft); 
    }) 
    .mouseup(function() { 
    $(this).data('drag', false); 
    }); 
}, 

daysAgo: function (date) { 
// TODO: Fix date for IE... 
if ($.browser.msie) { 
    return '1 day ago'; 
} 

var d = new Date(date).getTime(); 
var n = new Date().getTime(); 

var numDays = Math.round(Math.abs(n - d)/(1000 * 60 * 60 * 24)); 
var daysAgo = numDays + ' days ago'; 

if (numDays == 0) { 
    daysAgo = 'today'; 
} 
else if (numDays == 1) { 
    daysAgo = numDays + ' day ago'; 
} 

return daysAgo; 
} 
}; 
} 
Tweetstream.init(); 
</script> 
</head> 
+0

謝謝!這是照顧錯誤。然而,選框本身似乎沒有工作。你有什麼可以幫忙的嗎?我已經檢查過:•指定的div的名稱和符號•函數名稱中的錯誤(如果您查看我第一次在此處粘貼的代碼,則有兩處函數被稱爲「Twitter」,而它應該是'Tweetstream'。這是我從我複製的腳本的舊版本更改時發生的一個錯誤。 – user1891700

+0

hmm lil混淆理解..只是爲了清楚你使用http://jsfiddle.net/創建一個測試用例的錯誤,並分享鏈接..我可以幫助... – thecodejack

+0

嘿,感謝您的報價:http://jsfiddle.net/randomlysid/DGPAH/在這裏,你去,這是所有的代碼我目前爲止,我似乎無法讓tweetstream顯示在標題下的div中,我確信這是我犯的一個基本錯誤,這基本上是我自學html/css的方法,所以任何幫助將做,你的耐心感激! – user1891700

0

添加類型= 「文/ JavaScript的」 您的jQuery參考標籤 -

<script src='http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js' type="text/javascript"> 

此外,您將要麼移動網址末尾的單引號,要麼刪除斜線。

然後在文檔準備包裝附上代碼 -

$(document).ready(function() { 
    // your code here 
}); 
+0

非常感謝,這有所幫助。 – user1891700

相關問題