<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>LISTEN RADIO ONLINE - EXPLORE BY GENRE, COUNTRY & MORE | RADIO QUAKE</title>
<meta name="description" content=" Listen to online radio and music on the best selected radio stations. Enjoy unlimited radio streaming and listen radio anytime on q-3.eu - your hub for online radio stations.">
<meta name="keywords" content="internet radio, listen radio, top music online, music radio station, music radio fm, house music radio, radio listen for free, listen radio">
<!-- Open Graph (Facebook) -->
<meta property="og:title" content="Free internet radio and music online"/>
<meta property="og:site_name" content="q-3.eu"/>
<meta property="og:description" content="Listen to online radio and music on the best selected radio stations. Discover free online radio at q-3.eu"/>
<meta property="og:image" content="https://www.q-3.eu/facebook.jpg"/>
<meta property="og:url" content="https://www.q-3.eu/"/>
<meta property="og:type" content="website"/>
<!-- Twitter -->
<meta name="twitter:card" content="summary"/>
<meta name="twitter:title" content="Free internet radio online"/>
<meta name="twitter:description" content="Listen to online radio and music on the best selected radio stations. Discover free online radio at q-3.eu"/>
<meta name="twitter:image" content="https://www.q-3.eu/logs.jpg"/>
<meta name="twitter:url" content="https://www.q-3.eu/"/>
<!-- Favicon -->
<link rel="icon" href="favicon.ico" type="image/x-icon" />
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon" />
<!-- Manifest -->
<link rel="manifest" href="/manifest.json">
<link rel="canonical" href="https://www.q-3.eu/" />
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css">
<link rel="preload" href="assets/css/home.css?v=05022025205749" as="style">
<link rel="stylesheet" href="assets/css/home.css?v=05022025205749">
<link rel="sitemap" type="application/xml" title="Sitemap XML" href="https://www.q-3.eu/sitemap.xml">
<link rel="sitemap" type="text/plain" title="Sitemap TXT" href="https://www.q-3.eu/sitemap.txt">
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "RadioStation",
"name": "Radio Quake",
"url": "https://www.q-3.eu/",
"sameAs": [
"https://twitter.com/RadioQuake",
"https://www.facebook.com/RadioQuake"
],
"genre": "Various",
"logo": "https://www.q-3.eu/logs.jpg",
"areaServed": "Global",
"hasBroadcastFrequency": "Online"
}
</script>
<!-- Dublin Core Metadata -->
<meta name="DC.Title" content="Free internet radio and music online" />
<meta name="DC.Creator" content="Radio Quake" />
<meta name="DC.Subject" content="Online radio, music, various genres, PWA" />
<meta name="DC.Description" content="Listen to online radio and music on the best selected radio stations. Discover free online radio at q-3.eu" />
<meta name="DC.Publisher" content="q-3.eu" />
<meta name="DC.Date" content="2025-02-05" />
<meta name="DC.Type" content="PWA Website" />
<meta name="DC.Format" content="text/html" />
<meta name="DC.Identifier" content="https://www.q-3.eu/" />
<meta name="DC.Language" content="en" />
<meta name="DC.Coverage" content="Global" />
<meta name="DC.Rights" content="Copyright © 2025 q-3.eu. All rights reserved." />
<!-- Additional Metadata -->
<meta name="application-name" content="Radio Quake" />
<meta name="theme-color" content="#0e1b2b" />
<meta name="mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-title" content="Radio Quake" />
<link rel="icon" sizes="192x192" href="/icons/192/icon-192x192.png" />
<link rel="apple-touch-icon" href="/icons/192/icon-192x192.png" />
</head>
<body>
<header>
<!-- Google Tag Manager -->
<script>
window.addEventListener('load', function() {
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-MRCW2DH7');
});
</script>
<!-- End Google Tag Manager -->
<!-- Google Tag Manager (noscript) -->
<noscript>
<iframe src="https://www.googletagmanager.com/ns.html?id=GTM-MRCW2DH7"
height="0" width="0" style="display:none;visibility:hidden"></iframe>
</noscript>
<!-- End Google Tag Manager (noscript) -->
<div class="menu"> <div class="dropdown"><button class="dropbtn">🏆 Top 20 stations</button><div class="dropdown-content"><a href="/station/classicrock">🥇 Classic Rock</a><a href="/station/relaxlounge">🥈 Relax Lounge</a><a href="/station/dishfm">🥉 Dish FM</a><a href="/station/nrjlounge">🏅 NRJ Lounge</a><a href="/station/relax">🏅 RELAX</a><a href="/station/sandra">🏅 Sandra</a><a href="/station/psytrance">🏅 Psy Trance</a><a href="/station/trancehitsradiorecord">🏅 TRANCE HITS RADIO RECORD</a><a href="/station/pulsradiolounge">🏅 PULSRADIO LOUNGE</a><a href="/station/bestdeepfm">🏅 BEST DEEP FM</a><a href="/station/lovetrance">🏅 LOVE TRANCE</a><a href="/station/tophitradio">🏅 TOP HIT RADIO</a><a href="/station/smoothlounge">🏅 Smooth Lounge</a><a href="/station/dancefmtrance">🏅 DANCE FM TRANCE</a><a href="/station/tranceisstarradio">🏅 Trance Is Star Radio</a><a href="/station/rock70s">🏅 Rock 70s</a><a href="/station/enigmaticspinner">🏅 Enigmatic spinner</a><a href="/station/538dancedept">🏅 538 Dance Dept</a><a href="/station/loungednb">🏅 lounge DNB</a><a href="/station/enigma">🏅 Enigma</a></div></div><script>
document.addEventListener('DOMContentLoaded', () => {
const dropdown = document.querySelector('.dropdown'); // Весь контейнер дропдауна
const dropbtn = document.querySelector('.dropbtn'); // Кнопка дропдауна
const dropdownContent = document.querySelector('.dropdown-content'); // Выпадающий список
// Клик по кнопке для показа/скрытия списка
dropbtn.addEventListener('click', (event) => {
event.stopPropagation(); // Предотвращаем всплытие события
dropdownContent.classList.toggle('show'); // Переключаем видимость
});
// Клик в любом месте вне дропдауна для его закрытия
document.addEventListener('click', (event) => {
if (!dropdown.contains(event.target)) {
dropdownContent.classList.remove('show'); // Скрываем список
}
});
});
</script>
<img src="/logs.jpg" width="100" height="50" alt="RADIO QUAKE - Logo of the online radio service">
</div>
</header>
<div id="news-ticker">
<div class="ticker-content"><a href="/news/articles/top10techno.php" target="_blank">TOP 10 TECHNO RADIO STATIONS TO KEEP THE BEAT ALIVE</a> ✨ <a href="/news/articles/top10lounge.php" target="_blank">UNWIND WITH THE BEST: TOP 10 LOUNGE RADIO STATIONS FOR RELAXATION AND STYLE</a> ✨ <a href="/news/articles/top3trance.php" target="_blank">TRANCE RADIO ONLINE – THE BEST TRANCE MUSIC STATIONS FOR ULTIMATE LISTENING</a></div>
</div>
<style>
#news-ticker {
position: fixed;
bottom: 0;
left: 0;
width: 100%;
background: #000;
color: #fff;
z-index: 50000;
overflow: hidden;
white-space: nowrap;
}
.ticker-content {
display: inline-block;
padding: 10px;
font-size: 16px;
font-weight: bold;
animation: scroll-left 30s linear infinite;
animation-play-state: running; /* Запуск анимации */
}
#news-ticker:hover .ticker-content {
animation-play-state: paused; /* Остановка анимации при наведении */
}
#news-ticker a {
color: #fff;
text-decoration: none;
margin-right: 50px;
}
@keyframes scroll-left {
from {
transform: translateX(100%);
}
to {
transform: translateX(-100%);
}
}
</style>
<script src="article_popup.js"></script>
<h1 class="sr-only">Listen to the Best Free Online Radio Stations</h1>
<div class="content">
<div class="tabs">
</div>
<div class="grid">
<!-- Карточка "More Genres" -->
<div class="card">
<a href="https://www.q-3.eu/wall.php" aria-label="More genres available on the wall page">
<i class="fas fa-water" aria-hidden="true"></i>
<p><strong>More Genres</strong></p><h6>12218 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Electronic"
aria-label="Electronic - 2528 stations">
<i class="fas fa-compact-disc"
aria-hidden="true"></i>
<p>
<strong>ELECTRONIC</strong>
</p>
<h6>2528 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/dance"
aria-label="dance - 2479 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>DANCE</strong>
</p>
<h6>2479 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Disco"
aria-label="Disco - 2328 stations">
<i class="fas fa-compact-disc"
aria-hidden="true"></i>
<p>
<strong>DISCO</strong>
</p>
<h6>2328 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Club"
aria-label="Club - 2269 stations">
<i class="fas fa-glass-cheers"
aria-hidden="true"></i>
<p>
<strong>CLUB</strong>
</p>
<h6>2269 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Pop"
aria-label="Pop - 498 stations">
<i class="fas fa-microphone"
aria-hidden="true"></i>
<p>
<strong>POP</strong>
</p>
<h6>498 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Techno"
aria-label="Techno - 221 stations">
<i class="fas fa-headphones"
aria-hidden="true"></i>
<p>
<strong>TECHNO</strong>
</p>
<h6>221 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/lounge"
aria-label="lounge - 197 stations">
<i class="fas fa-tree"
aria-hidden="true"></i>
<p>
<strong>LOUNGE</strong>
</p>
<h6>197 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Mixed"
aria-label="Mixed - 162 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>MIXED</strong>
</p>
<h6>162 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/rock"
aria-label="rock - 90 stations">
<i class="fas fa-drum"
aria-hidden="true"></i>
<p>
<strong>ROCK</strong>
</p>
<h6>90 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Chillout"
aria-label="Chillout - 83 stations">
<i class="fas fa-cloud"
aria-hidden="true"></i>
<p>
<strong>CHILLOUT</strong>
</p>
<h6>83 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Various"
aria-label="Various - 76 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>VARIOUS</strong>
</p>
<h6>76 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Jazz"
aria-label="Jazz - 69 stations">
<i class="fas fa-sun"
aria-hidden="true"></i>
<p>
<strong>JAZZ</strong>
</p>
<h6>69 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/House"
aria-label="House - 59 stations">
<i class="fas fa-home"
aria-hidden="true"></i>
<p>
<strong>HOUSE</strong>
</p>
<h6>59 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Ambient"
aria-label="Ambient - 57 stations">
<i class="fas fa-leaf"
aria-hidden="true"></i>
<p>
<strong>AMBIENT</strong>
</p>
<h6>57 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Variety"
aria-label="Variety - 35 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>VARIETY</strong>
</p>
<h6>35 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/trance"
aria-label="trance - 28 stations">
<i class="fas fa-bolt"
aria-hidden="true"></i>
<p>
<strong>TRANCE</strong>
</p>
<h6>28 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Hits"
aria-label="Hits - 25 stations">
<i class="fas fa-star"
aria-hidden="true"></i>
<p>
<strong>HITS</strong>
</p>
<h6>25 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/News"
aria-label="News - 24 stations">
<i class="fas fa-microphone"
aria-hidden="true"></i>
<p>
<strong>NEWS</strong>
</p>
<h6>24 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Classical"
aria-label="Classical - 24 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>CLASSICAL</strong>
</p>
<h6>24 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Relax"
aria-label="Relax - 23 stations">
<i class="fas fa-bed"
aria-hidden="true"></i>
<p>
<strong>RELAX</strong>
</p>
<h6>23 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/HipHop"
aria-label="Hip Hop - 23 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>HIP HOP</strong>
</p>
<h6>23 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/DeepHouse"
aria-label="Deep House - 21 stations">
<i class="fas fa-wave-square"
aria-hidden="true"></i>
<p>
<strong>DEEP HOUSE</strong>
</p>
<h6>21 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Country"
aria-label="Country - 21 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>COUNTRY</strong>
</p>
<h6>21 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Alternative"
aria-label="Alternative - 19 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>ALTERNATIVE</strong>
</p>
<h6>19 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Spiritual"
aria-label="Spiritual - 18 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>SPIRITUAL</strong>
</p>
<h6>18 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Retro"
aria-label="Retro - 17 stations">
<i class="fas fa-record-vinyl"
aria-hidden="true"></i>
<p>
<strong>RETRO</strong>
</p>
<h6>17 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Oldies"
aria-label="Oldies - 17 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>OLDIES</strong>
</p>
<h6>17 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/K-pop"
aria-label="K-pop - 17 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>K-POP</strong>
</p>
<h6>17 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/talkradio"
aria-label="talk radio - 16 stations">
<i class="fas fa-microphone-alt"
aria-hidden="true"></i>
<p>
<strong>TALK RADIO</strong>
</p>
<h6>16 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Talk"
aria-label="Talk - 16 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>TALK</strong>
</p>
<h6>16 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Indian"
aria-label="Indian - 16 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>INDIAN</strong>
</p>
<h6>16 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Christian"
aria-label="Christian - 16 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>CHRISTIAN</strong>
</p>
<h6>16 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Latin"
aria-label="Latin - 15 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>LATIN</strong>
</p>
<h6>15 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Nature"
aria-label="Nature - 14 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>NATURE</strong>
</p>
<h6>14 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/hard"
aria-label="hard - 14 stations">
<i class="fas fa-fire"
aria-hidden="true"></i>
<p>
<strong>HARD</strong>
</p>
<h6>14 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Chanson"
aria-label="Chanson - 14 stations">
<i class="fas fa-guitar"
aria-hidden="true"></i>
<p>
<strong>CHANSON</strong>
</p>
<h6>14 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/SmoothJazz"
aria-label="Smooth Jazz - 13 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>SMOOTH JAZZ</strong>
</p>
<h6>13 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Religious"
aria-label="Religious - 13 stations">
<i class="fas fa-cross"
aria-hidden="true"></i>
<p>
<strong>RELIGIOUS</strong>
</p>
<h6>13 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/NewAge"
aria-label="New Age - 13 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>NEW AGE</strong>
</p>
<h6>13 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/instrumental"
aria-label="instrumental - 13 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>INSTRUMENTAL</strong>
</p>
<h6>13 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/EDM"
aria-label="EDM - 13 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>EDM</strong>
</p>
<h6>13 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/TamilMusic"
aria-label="Tamil Music - 12 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>TAMIL MUSIC</strong>
</p>
<h6>12 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Bollywood"
aria-label="Bollywood - 12 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>BOLLYWOOD</strong>
</p>
<h6>12 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Bass"
aria-label="Bass - 12 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>BASS</strong>
</p>
<h6>12 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Schlager"
aria-label="Schlager - 11 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>SCHLAGER</strong>
</p>
<h6>11 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Chill"
aria-label="Chill - 11 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>CHILL</strong>
</p>
<h6>11 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/80s"
aria-label="80s - 11 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>80S</strong>
</p>
<h6>11 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Sports"
aria-label="Sports - 10 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>SPORTS</strong>
</p>
<h6>10 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Party"
aria-label="Party - 10 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>PARTY</strong>
</p>
<h6>10 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Minimal"
aria-label="Minimal - 10 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>MINIMAL</strong>
</p>
<h6>10 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/Gospel"
aria-label="Gospel - 10 stations">
<i class="fas fa-music"
aria-hidden="true"></i>
<p>
<strong>GOSPEL</strong>
</p>
<h6>10 STATIONS</h6>
</a>
</div>
<div class="card">
<a href="/genre/enigmatic"
aria-label="enigmatic - 10 stations">
<i class="fas fa-magic"
aria-hidden="true"></i>
<p>
<strong>ENIGMATIC</strong>
</p>
<h6>10 STATIONS</h6>
</a>
</div>
</div>
</div>
<div class="footer">
<div class="controls">
<!-- Кнопка воспроизведения/паузы -->
<button onclick="togglePlay()" aria-label="Play or Pause" id="play-button">
<i class="fas fa-play" aria-hidden="true"></i>
</button>
<!-- Кнопка следующей станции -->
<button onclick="nextStation()" aria-label="Next Station">
<i class="fas fa-forward" aria-hidden="true"></i>
</button>
<!-- Информация о текущей станции -->
<div class="station-info">
<i id="station-icon" class="fas fa-music" aria-hidden="true"></i>
<span id="station-name" aria-live="polite">Loading...</span>
</div>
</div>
<!-- Аудиоплеер -->
<audio id="audio-player" preload="none" aria-label="Audio player for the current station"></audio>
<!-- Регулятор громкости -->
<input type="range" id="volume-control" min="0" max="1" step="0.1" value="0.5"
onchange="changeVolume(this.value)" aria-label="Volume control">
</div>
<script>
const audioPlayer = document.getElementById('audio-player');
const playButton = document.getElementById('play-button');
const stationName = document.getElementById('station-name');
const stationIcon = document.getElementById('station-icon');
// Список станций из топ-20
const stations = [{"name":"Classic Rock","url":"https:\/\/ouifm3.ice.infomaniak.ch\/ouifm3.mp3","icon":"fa-music"},{"name":"Relax Lounge","url":"https:\/\/stream.relaxfm.ee\/international_HD","icon":"fa-music"},{"name":"Dish FM","url":"https:\/\/server27166.streamplus.de\/stream.mp3","icon":"fa-music"},{"name":"NRJ Lounge","url":"https:\/\/nrj.de\/lounge","icon":"fa-music"},{"name":"RELAX","url":"https:\/\/relax.stream.laut.fm\/relax","icon":"fa-music"},{"name":"Sandra","url":"https:\/\/stream02.pcradio.ru\/Sandra-med","icon":"fa-music"},{"name":"Psy Trance","url":"https:\/\/dfm.hostingradio.ru\/psytrance96.aacp","icon":"fa-music"},{"name":"TRANCE HITS RADIO RECORD","url":"https:\/\/radiorecord.hostingradio.ru\/trancehits96.aacp","icon":"fa-music"},{"name":"PULSRADIO LOUNGE","url":"https:\/\/icecast.pulsradio.com\/relaxHD.mp3","icon":"fa-music"},{"name":"BEST DEEP FM","url":"https:\/\/listen8.myradio24.com\/5129","icon":"fa-music"},{"name":"LOVE TRANCE","url":"https:\/\/trance.stream.laut.fm\/trance","icon":"fa-music"},{"name":"TOP HIT RADIO","url":"https:\/\/strw3.openstream.co\/2372","icon":"fa-music"},{"name":"Smooth Lounge","url":"https:\/\/smoothjazz.cdnstream1.com\/2586_128.mp3","icon":"fa-music"},{"name":"DANCE FM TRANCE","url":"https:\/\/broadcast.dancefmlive.com\/radio\/8010\/radio.mp3","icon":"fa-music"},{"name":"Trance Is Star Radio","url":"https:\/\/listen7.myradio24.com\/tisradio","icon":"fa-music"},{"name":"Rock 70s","url":"https:\/\/ouifmrock70s.ice.infomaniak.ch\/ouifmseventies.mp3","icon":"fa-music"},{"name":"Enigmatic spinner","url":"https:\/\/live.radiospinner.com\/ngmtcbr-64","icon":"fa-music"},{"name":"538 Dance Dept","url":"https:\/\/playerservices.streamtheworld.com\/api\/livestream-redirect\/TLPSTR01.mp3","icon":"fa-music"},{"name":"lounge DNB","url":"https:\/\/128k.co.uk\/stream\/5113\/","icon":"fa-music"},{"name":"Enigma","url":"https:\/\/stream02.pcradio.ru\/Enigma-hi","icon":"fa-music"}];
// Начинаем с первой станции из списка (а не случайной!)
let currentStationIndex = 0;
let isPlaying = false;
// Функция для обновления станции
function updateStation(index) {
if (index >= 0 && index < stations.length) {
const station = stations[index];
audioPlayer.src = station.url;
stationName.textContent = station.name.toUpperCase();
stationIcon.className = `fas ${station.icon ?? 'fa-music'}`;
// Обновляем кнопку Play в состояние "Воспроизведение"
isPlaying = false;
playButton.innerHTML = '<i class="fas fa-play" aria-hidden="true"></i>';
}
}
// Функция для переключения на следующую станцию (по кругу)
function nextStation() {
currentStationIndex = (currentStationIndex + 1) % stations.length;
updateStation(currentStationIndex);
}
// Тоггл для воспроизведения/паузы
function togglePlay() {
if (!isPlaying) {
audioPlayer.play().then(() => {
isPlaying = true;
playButton.innerHTML = '<i class="fas fa-pause" aria-hidden="true"></i>';
}).catch(() => {
console.error('Audio cannot be played.');
});
} else {
audioPlayer.pause();
isPlaying = false;
playButton.innerHTML = '<i class="fas fa-play" aria-hidden="true"></i>';
}
}
// Управление громкостью
function changeVolume(value) {
audioPlayer.volume = value;
}
// Запускаем первую станцию из топ-20
updateStation(currentStationIndex);
</script>
<input id="menu-toggle" class="open" type="checkbox" hidden>
<label class="btn" for="menu-toggle" aria-label="Toggle menu"></label>
<div class="top-panel">
<!-- Кнопка с количеством станций -->
<br> <div class="station-button">
STATION COUNT : 12218 </div>
<div class="message">
<h2><b>
<style>
nav ul {
list-style: none;
padding: 0;
margin: 0;
}
nav ul li {
display: block;
margin: 0;
}
.menu-item {
display: flex;
align-items: center;
text-decoration: none;
padding: 10px;
background-color: #39464e;
color: white;
font-size: 16px;
border-radius: 4px;
cursor: pointer;
border-bottom: 1px solid #2f3a42;
text-align: center;
}
.menu-item:hover {
background-color: #2f3a42;
}
</style>
<nav>
<ul>
<li>
<a href="#" id="install-app-button" class="menu-item" style="display: none;">
📲 INSTALL APP
</a>
</li>
</ul>
</nav>
<script>
document.addEventListener('DOMContentLoaded', () => {
const installButton = document.getElementById('install-app-button');
let deferredPrompt = null;
// Проверяем, установлена ли PWA
const isStandalone = window.matchMedia('(display-mode: standalone)').matches || window.navigator.standalone;
if (isStandalone) {
installButton.style.display = 'none';
return;
}
// Проверяем, это iOS или нет
const isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;
// Для iOS показываем инструкцию по установке
if (isIOS) {
installButton.textContent = '📲 ADD TO HOME SCREEN';
installButton.style.display = 'block';
installButton.addEventListener('click', () => {
alert('To install the app, tap the share button and select "Add to Home Screen".');
});
return;
}
// Событие beforeinstallprompt (если PWA можно установить)
window.addEventListener('beforeinstallprompt', (e) => {
e.preventDefault();
deferredPrompt = e;
installButton.style.display = 'block';
installButton.addEventListener('click', async () => {
if (deferredPrompt) {
deferredPrompt.prompt();
const choiceResult = await deferredPrompt.userChoice;
if (choiceResult.outcome === 'accepted') {
installButton.style.display = 'none';
}
deferredPrompt = null;
}
});
});
});
// Регистрация Service Worker
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('/service-worker.js');
}
</script>
<a href="https://www.q-3.eu/" title="Go to Home Page" aria-label="Go to Home Page">🏠 HOME</a>
<a href="https://www.q-3.eu/radio.php" title="Switch to Random Mode" aria-label="Switch to Random Mode">🎲 RANDOM </a>
<a href="https://www.q-3.eu/search.php" aria-label="Search for radio stations page" title="Search for stations">🔍 SEARCH STATION</a>
<a href="https://www.q-3.eu/all.php" title="View all available stations" aria-label="View all available radio stations">📻 ALL STATIONS</a>
<a href="https://www.q-3.eu/wall.php" title="Filter stations based on your preferences" aria-label="Filter stations based on your preferences">🧹 FILTERS</a>
<a href="https://www.q-3.eu/user/listen.php" title="Listen stations based on your preferences" aria-label="Listen to your favorite stations">⭐ FAVORITES</a>
<a href="https://www.q-3.eu/user/index.php" title="Edit stations based on your preferences" aria-label="Edit your favorite stations">✏️ EDIT FAVORITES</a>
<a href="https://www.q-3.eu/tags/cloud.php" title="Edit stations based on your preferences" aria-label="Edit your favorite stations">🌟 POPULAR TAGS</a>
<a href="https://t.me/radio_quake" target="_blank" title="Join our Telegram community" aria-label="Join our Telegram community (opens in a new window)">💬 TELEGRAM</a>
<a href="https://www.q-3.eu/copyright.php" target="_blank" title="Read the legal information and terms of service" aria-label="Read the legal information and terms of service (opens in a new window)">📜 LEGAL INFORMATION</a>
<a href="https://www.q-3.eu/cookie-policy.php" target="_blank" title="Learn about our cookie usage policy" aria-label="Learn about our cookie usage policy (opens in a new window)">🍪 COOKIE POLICY</a>
<a href="https://www.q-3.eu/privacy.php" target="_blank" title="Understand our privacy policy" aria-label="Understand our privacy policy (opens in a new window)">🔒 PRIVACY POLICY</a>
<a href="https://www.q-3.eu/sitemap.php" target="_blank" title="View the sitemap of the website" aria-label="View the website sitemap (opens in a new window)">🗺️ SITEMAP</a>
<!-- Ссылка на админку, видимая только для авторизованных пользователей -->
</b>
</h2>
<style>
.station-button {
display: flex;
align-items: center;
justify-content: center;
width: 90%;
height: 40px;
background: #39464e; /* Основной цвет кнопки */
border-radius: 5px;
box-shadow: inset 3px 3px 6px rgba(0, 0, 0, 0.8), /* Вдавленная внутренняя тень */
inset -3px -3px 6px rgba(255, 255, 255, 0.1); /* Легкий свет для гравировки */
border: none; /* Убрана рамка */
color: #dce5f5; /* Цвет текста */
font-size: 1rem; /* Размер текста */
font-weight: bold; /* Жирный текст */
text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.9); /* Гравировочная тень текста */
text-align: center; /* Центрирование текста */
margin: 10px auto; /* Центрирование кнопки */
cursor: default; /* Обычный курсор вместо руки */
opacity: 0.7; /* Прозрачность для эффекта неактивности */
pointer-events: none; /* Отключает взаимодействие с элементом */
}
/* Эффект наведения мыши */
.station-button:hover {
background: #2f3c43; /* Чуть более темный цвет */
color: #ffffff; /* Белый текст на hover */
cursor: pointer; /* Курсор-указатель */
}
</style>
</div>
</div>
<script src="/counter/js/home.js" async></script>
<br><br><br>
<script src="/sw.js" async></script>