Every time I switch videos on youtube, the title doesn't change in my popup window. I have to manually refresh the page for the title to change. Which script should take care of doing this ? Any help is really appreciated. I'm using javascript for the first time.
<!-- popup.html -->
<!DOCTYPE html>
<html>
<head>
<title>YouTube Song Matcher Popup</title>
<link rel="stylesheet" type="text/css" href="styles.css">
<script src="popup.js"></script>
</head>
<body>
<h1>YouTube Song Matcher</h1>
<div id="songInfo">
<h2>Currently Playing:</h2>
<p id="videoTitle"></p>
</div>
<div id="matchingSongs">
<h2>Matching Songs:</h2>
<ul id="songList"></ul>
</div>
</body>
</html>
// Popup script (popup.js)
// Retrieve the stored video title from localStorage
function getStoredVideoTitle() {
return localStorage.getItem('videoTitle') || '';
}
// Set the video title in localStorage
function setVideoTitle(videoTitle) {
localStorage.setItem('videoTitle', videoTitle);
}
// Function to display the video title in the popup window
function displayVideoTitle(videoTitle) {
document.getElementById('videoTitle').textContent = videoTitle;
}
// Retrieve the stored video title and display it in the popup when loaded
document.addEventListener('DOMContentLoaded', function() {
displayVideoTitle(getStoredVideoTitle());
});
// Message listener for receiving the video title from the background script
chrome.runtime.onMessage.addListener(function(message, sender, sendResponse) {
if (message.type === 'VIDEO_TITLE') {
const videoTitle = message.title;
// Store the video title in localStorage for persistence
setVideoTitle(videoTitle);
// Display the video title in the popup window
displayVideoTitle(videoTitle);
}
});
Any help is much appreciated.
Thanks
Via Active questions tagged javascript - Stack Overflow https://ift.tt/2m3h9lL
Comments
Post a Comment