Я пытаюсь добавить переменную с именем "tokeninput". Я хочу добавить текстовое поле для редактирования этой переменной.

Я искал несколько часов и не нашел результата.

<script src="https://sdk.scdn.co/spotify-player.js"></script>
 <script>

window.onSpotifyWebPlaybackSDKReady = () => {
const token = '`enter token here`';
const player = new Spotify.Player({
  name: 'Speaker of some sort',
  getOAuthToken: cb => { cb(token); }

 });

</script>

Таким образом, ожидается, что я поставлю маркер, найденный на странице, и введу его, если игрок будет работать.

Заранее спасибо РЕДАКТИРОВАТЬ: Спасибо всем, кто помог. Окончательный сценарий работал с помощью ответов.

0
modman276 22 Окт 2019 в 21:37

3 ответа

Лучший ответ

Вы хотите иметь текстовое поле в html для настройки токена, чем вызывать функцию Spotify.player?

<html>
 <body> 
   <input type="text" id="token" />
   <script>
      function updateToken(){
           var token = document.getElementById("token");
           // Do whatever with the token here
       }
   </script>
</body>
</html>

Это также может быть извлечено в его собственный JS-файл, если там находится вся другая логика API spotify.

0
Nocturnel 22 Окт 2019 в 19:03

Вы можете использовать приведенный ниже код:

<script src="https://sdk.scdn.co/spotify-player.js"></script>
<script>

window.onSpotifyWebPlaybackSDKReady = () => {
const prompt = '`enter token here`';
const token = $('#idOfTokenInput'); // OR document.querySelector('idorClassofInputelement')
const player = new Spotify.Player({
  name: 'Speaker of some sort',
  getOAuthToken: cb => { cb(token); }

 });
 // To update the Token with input change
 $('#idOfTokenInput').keydown(function(event) { 
    token = $('#idOfTokenInput').value;
 }); 

</script>
0
GB Patil 22 Окт 2019 в 19:25

Вы можете добавить элемент динамически, используя JS, как,

var input = document.createElement('input'); 
input.type = "text"; 
input.placeholder = "enter token here";
document.body.appendChild(input); 
input.addEventListener("blur", function(e){
// add your code to use token here.
  alert("token is "+ input.value);
})
0
Vishnu 22 Окт 2019 в 19:13
58510456