2017-06-21 23 views
0

是否有人知道如何將soundcloud中的追隨者數量轉換爲JavaScript變量,以便在打擊1K時能夠響應通知我擁有代碼筆由我已付出其他用戶 我的代碼 - >here ,如果你不想去看看它,我已經包括它下面如何使用JavaScript獲得soundcloud follower count

HTML

' <head> 
<meta http-equiv="refresh" content="5"> 
</head> 
<div class="card"> 
<div class="icon"> 
    <i class="fa fa-soundcloud fa-3x"></i> 
</div> 

<div class="count"></div> 
<span>followers</span> 
</div> 

<audio id="myAudio"> 
<source src="file:///home/chronos/u-95bb3831b1fe3a2c6fb7e71045f629e9434b1484/Downloads/echoed-ding.mp3" type="audio/mpeg"> 
</audio> 
<p id="demo"></p> 

<button onclick="wright()" type="button">wright</button> 
<!-- 
<button onclick="pauseAudio()" type="button">Pause Audio</button> 
!-->' 

CSS

@import url(https://fonts.googleapis.com/css?family=Montserrat:400,700|Open+Sans+Condensed:300); 

$primary-font: "Montserrat"; 
$secondary-font: "Open Sans Condensed"; 




body { 
background-color: #1F282D; 

.card { 
width: 145px; 
height: 187px; 
left: 50%; 
top: 50%; 
transform: translate(-50%, -50%); 
position: absolute; 
opacity: 0; 
transition: .1s opacity; 
/*border: 1px solid #fff; 
border-radius: 6px;*/ 

&.visible { 
    opacity: 1; 
} 

.icon { 
    position: relative; 
    top: .85em; 

} 

    .count { 
     font-family: $primary-font; 
     font-size: 4em; 
     line-height: 1em; 

     bottom: 0.9em; 
    } 

    span { 
     font-family: $secondary-font; 
     text-transform: uppercase; 
     font-size: 1.1em; 
     letter-spacing: 2px; 

     bottom: 1.1em; 
    } 

    .count, span, .icon i.fa { 
     position: absolute; 
     left: 50%; 
     transform: translateX(-50%); 

     color: #fff; 
    } 
} 
} 

的JavaScript

var abbrev = { 
1e3: "K", 
1e6: "M" 
}; 

aja() 
.method("GET") 
.url('https://api.soundcloud.com/users/awesomesauce105?consumer_key=8bcccc3476eaa137a084c9f0c041915f') 
.on('200', function(res) { 
    var followersCount = res.followers_count; 
    Object.keys(abbrev).map(function(k) { 
     k = +k; 
     if (followersCount > k) { 
      var a = followersCount/k, 
       short = a.toString().length > 3 ? Math.round(a * 10)/10 : a; 
      followersCount = short + abbrev[k]; 
     } 
    }); 
    if (followersCount !== undefined) { 
     $(".card .count").text(followersCount); 
     $(".card").addClass("visible"); 
    } 
}) 
.go(); 
var audio = new Audio('file:///home/chronos/u-95bb3831b1fe3a2c6fb7e71045f629e9434b1484/Downloads/html%205%20up/echoed-ding.mp3'); 
function playMyAudio() { 
audio.play() 
} 
var x = document.getElementById("myAudio"); 

function playAudio() { 
x.play(); 
} 

function pauseAudio() { 
x.pause(); 
} 
function wright(){ 
document.getElementById("demo").innerHTML = ; 
} 

我的目標是響的通知時,我打1K以下我有位於自己的Chromebook在文件中的MP3:///家/克羅諾斯/ U-95bb3831b1fe3a2c6fb7e71045f629e9434b1484 /下載/ HTML% 205%20up/echoed-ding.mp3 我想讓它玩兩次,所以我可以慶祝。我不知道如何檢查我擁有的追隨者數量,所以我使用了其他人的代碼,但是因爲我沒有做到這一點,所以我不知道JavaScript部門發生了什麼,因此我不能自己弄清楚,因爲我通常會查找如何在變量碰到某個變量時運行某個函數,然後激活x.play()來播放聲音...如果您有任何建議,請讓我知道謝謝!

+0

你看過Javascript SDK的Soundcloud API嗎? https://developers.soundcloud.com/docs/api/sdks應該訣竅 – djfdev

+0

這是一些面試作業的東西..? – vsync

+0

@vsync nope,我只想在成名時得到通知lol – SeeGreatness

回答

0

您可以使用Soundcloud的Javascript SDK從客戶端獲取其API。因此,添加到您的HTML:

<script src="https://connect.soundcloud.com/sdk/sdk-3.1.2.js"></script> 
<script> 
    SC.initialize({ 
    client_id: 'YOUR_CLIENT_ID' // edit this with your API credential 
    }) 
</script> 

不幸的是,有沒有辦法接收從SoundCloud的API一個「通知」時,你的追隨者打一定數量。相反,您可以編寫一個定期查找用戶的函數,並在隨從計數到達您想要的位置時執行一些特殊的操作。所以在你的Javascript,如下所示:

function pollSoundcloud (interval) { 
    var timer = setInterval(function() { 
    SC.get('/user/YOUR_USER_ID').then(function (user) { 
     if (user.followers_count >= 1000) { 
     clearInterval(timer) 
     alert('You just reached 1000 followers!') // or do something else 
     } 
    }) 
    }, interval) 
} 

pollSoundcloud(10000) // will check every 10 seconds 
+0

感謝您的幫助,所以如果我是正確的代碼應該看起來像https://codepen.io/SeeGreatness/pen/OggBQy?我有很多關於分號的錯誤,當我嘗試測試代碼時(通過改變追隨者的數量來觸發通知,它似乎不起作用... – SeeGreatness

+0

所以我的用戶ID將是... https:// soundcloud.com/awesomesauce105或awesomesauce105我現在知道它是/ user/awesomesauce105 – SeeGreatness