PageSourceSearch

https://www.surfmusic.de/amerika.htm

html surfmusic.de collected 2026-10-02 07:50:38 UTC 20,221 bytes, 508 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en-US">
3<head>
4<meta charset="UTF-8">
5<title>Online Radio: USA, Canada, Caribbean & Latin America</title>
6<meta name="audience" content="Alle">
7<meta name="description" content="Stream live radio from the Americas & Caribbean—USA, Canada, Mexico, Central and South America. Free music, news and sports by country, city and genre.">
8<meta name="page-topic" content="Radio">
9<meta name="robots" content="INDEX,FOLLOW">
10<meta name="p:domain_verify" content="8c440af5aa666d815a07c52bd0e3d41e">
11<meta name="title" content="Oceania Online Radio – Free Live Radio Stations">
12<meta property="og:title" content="Online Radio: USA, Canada, Caribbean & Latin America">
13<meta property="og:type" content="website">
14<meta property="og:url" content="https://www.surfmusic.de/ozean.htm">
15<meta property="og:description" content="Stream live radio from the Americas & Caribbean—USA, Canada, Mexico, Central and South America. Free music, news and sports by country, city and genre."">
16<meta property="og:image" content="https://www.surfmusic.de/radio-station/logo2-neu.png">
17<meta property="og:site_name" content="surfmusic.de">
18<link rel="SHORTCUT ICON" href="https://www.surfmusic.de/favicon.ico">
19<meta name="viewport" content="width=device-width, initial-scale=1">
20<script>"use strict";function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}!function(){var t=function(){var t,e,o=[],n=window,r=n;for(;r;){try{if(r.frames.__tcfapiLocator){t=r;break}}catch(t){}if(r===n.top)break;r=r.parent}t||(!function t(){var e=n.document,o=!!n.frames.__tcfapiLocator;if(!o)if(e.body){var r=e.createElement("iframe");r.style.cssText="display:none",r.name="__tcfapiLocator",e.body.appendChild(r)}else setTimeout(t,5);return!o}(),n.__tcfapi=function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];if(!n.length)return o;"setGdprApplies"===n[0]?n.length>3&&2===parseInt(n[1],10)&&"boolean"==typeof n[3]&&(e=n[3],"function"==typeof n[2]&&n[2]("set",!0)):"ping"===n[0]?"function"==typeof n[2]&&n[2]({gdprApplies:e,cmpLoaded:!1,cmpStatus:"stub"}):o.push(n)},n.addEventListener("message",(function(t){var e="string"==typeof t.data,o={};if(e)try{o=JSON.parse(t.data)}catch(t){}else o=t.data;var n="object"===_typeof(o)&&null!==o?o.__tcfapiCall:null;n&&window.__tcfapi(n.command,n.version,(function(o,r){var a={__tcfapiReturn:{returnValue:o,success:r,callId:n.callId}};t&&t.source&&t.source.postMessage&&t.source.postMessage(e?JSON.stringify(a):a,"*")}),n.parameter)}),!1))};"undefined"!=typeof module?module.exports=t:t()}();</script>
20
21
22    
22<script>
23    window._sp_queue = [];
24    window._sp_ = {
25        config: {
26            accountId: 375,
27            baseEndpoint: 'https://cdn.privacy-mgmt.com',
28            propertyId: 37603,
29            gdpr: { },
30            events: {
31                onMessageChoiceSelect: function() {
32                    console.log('[event] onMessageChoiceSelect', arguments);
33                },
34                onMessageReady: function() {
35                    console.log('[event] onMessageReady', arguments);
36                },
37                onMessageChoiceError: function() {
38                    console.log('[event] onMessageChoiceError', arguments);
39                },
40                onPrivacyManagerAction: function() {
41                    console.log('[event] onPrivacyManagerAction', arguments);
42                },
43                onPMCancel: function() {
44                    console.log('[event] onPMCancel', arguments);
45                },
46                onMessageReceiveData: function() {
47                    console.log('[event] onMessageReceiveData', arguments);
48                },
49                onSPPMObjectReady: function() {
50                    console.log('[event] onSPPMObjectReady', arguments);
51                },
52                onConsentReady: function (consentUUID, euconsent) {
53                    console.log('[event] onConsentReady', arguments);
54                },
55                onError: function() {
56                    console.log('[event] onError', arguments);
57                },
58            }
59        }
60    }
61    </script>
61
62    
62<script src='https://cdn.privacy-mgmt.com/unified/wrapperMessagingWithoutDetection.js' async></script>
vendor: 1 bytes, line 62
62
63<script>
64    var googletag = googletag || {};
65    googletag.cmd = googletag.cmd || [];
66</script>
66
67<!-- Matomo -->
68<script>
69  var _paq = window._paq = window._paq || [];
70  /* tracker methods like "setCustomDimension" should be called before "trackPageView" */
71  _paq.push(['trackPageView']);
72  _paq.push(['enableLinkTracking']);
73  (function() {
74    var u="//surfmusik.at/matomo/";
75    _paq.push(['setTrackerUrl', u+'matomo.php']);
76    _paq.push(['setSiteId', '2']);
77    var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
78    g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s);
79  })();
80</script>
80
81<!-- End Matomo Code -->
82<script>
83function radio (url) {
84   fenster = window.open(url, "radio", "width=700,height=900,status=no,scrollbars=no,resizable=no");
85   fenster.focus();
86}
87</script>
87
88<link rel="stylesheet" href="https://www.surfmusic.de/radio.css">
89<style>
90:root{ --line:#e5e7eb; --bg:#fff; --ink:#000080; --muted:#6b7280; --radius:12px; }
91.table-wrap{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
92.table-wrap table{ width:100%; border-collapse:collapse; }
93#Sender { width:100%; border-collapse:collapse; }
94#Sender th.top, #Sender td { padding:.6rem .75rem; border-bottom:1px solid var(--line); }
95
96/* Pagination */
97.pagination{ display:flex; flex-wrap:wrap; gap:.4rem; align-items:center; margin:1rem 0; }
98.pagination .page-link, .pagination .dots{ padding:.4rem .6rem; border:1px solid var(--line); border-radius:.5rem; text-decoration:none; }
99.pagination .current{ font-weight:700; background:#f3f4f6; }
100.pagination .disabled{ opacity:.5; pointer-events:none; }
101.result-info{ margin:.6rem 0; color:#6b7280; font-size:.95rem; }
102
103/* Allgemein: Bilder flexibel */
104.rounded img { max-width: 100%; height: auto; display: block; }
105/* ---------- MOBILE: alles auf volle Breite + mittig ---------- */
106@media (max-width: 768px) {
107  /* GENRES: Tabelle mit .rounded-Kacheln */
108  table.genres-table,
109  table.genres-table tr,
110  table.genres-table th {
111    display: block !important;
112    width: 100% !important;
113    box-sizing: border-box;
114  }
115  table.genres-table th {
116    padding: 0 !important;
117    margin: 0 0 24px 0 !important;   /* Abstand zwischen Kacheln */
118    text-align: center !important;
119  }
120  .rounded,
121  .rounded .border {
122    display: block !important;
123    width: 100% !important;
124    max-width: none !important;
125    margin: 0 auto !important;
126    text-align: center !important;
127    float: none !important;
128  }
129  .rounded img { margin: 0 auto !important; }
130  .rounded ul {
131    list-style: none;
132    padding: 0;
133    margin: 12px 0 0 0;
134    text-align: center;
135  }
136  .rounded ul li { margin: 6px 0; }
137
138  /* JERKY: Info + Formular untereinander & zentriert */
139  table.jerky,
140  table.jerky tr,
141  table.jerky td {
142    display: block !important;
143    width: 100% !important;
144    box-sizing: border-box;
145    text-align: center !important;
146  }
147  table.jerky td { padding: 12px 16px; margin: 0 0 12px 0; }
148
149  table.jerky form { width: 100% !important; }
150
151  table.jerky input[type="text"],
152  table.jerky button[type="submit"] {
153    display: block !important;
154    width: 95% !important;          /* schön breit wie "Trending"-Box */
155    max-width: 520px !important;    /* optionales Limit */
156    margin: 8px auto !important;
157    box-sizing: border-box;
158  }
159}
160
161
162/* Elternzelle mittig (falls Form in einer Tabellenzelle steckt) */
163td, .bg { text-align: center; }
164
165/* Form-Inhalt zentrieren */
166form[action="such.htm"] {
167  display: inline-flex;      /* bleibt als Block zentrierbar */
168  align-items: center;
169  justify-content: center;
170  gap: 8px;
171}
172
173/* Feldbreite begrenzen, damit es „schön“ wirkt */
174form[action="such.htm"] input[type="text"] {
175  width: 100%;
176  max-width: 420px;
177  box-sizing: border-box;
178}
179
180/* Mobile: untereinander */
181@media (max-width: 768px) {
182  form[action="such.htm"] {
183    display: flex; 
184    flex-direction: column;
185  }
186  form[action="such.htm"] input[type="text"],
187  form[action="such.htm"] button[type="submit"] {
188    width: 90%;
189    max-width: 420px;
190    margin: 10px auto 0;
191  }
192}
193
194.meta {
195  /* Layout */
196  display: flex;
197  align-items: center;
198  justify-content: center;   /* mobil: mittig */
199  gap: 10px;
200  flex-wrap: wrap;
201
202  /* Box */
203  padding: 10px 14px;
204  border: 1px solid #e5e7eb; /* helles Grau */
205  border-radius: 8px;
206  background: #000080;       /* sehr helles Grau/Blau */
207
208  /* Typo */
209  font-size: 0.75rem;
210  line-height: 1.35;
211
212  /* zentriert im Container */
213  width: 100%;
214  box-sizing: border-box;
215  margin: 12px auto;
216  text-align: center;
217}
218
219.submit-cta { margin: 8px 0 0; }
220.submit-cta .btn {
221  display: inline-block;
222  padding: 8px 12px;
223  border-radius: 8px;
224  border: 1px solid #fff;
225  background: #000080;
226  text-decoration: none;
227  font-weight: 600;
228  color: aqua;
229}
230.submit-cta .btn:hover { background: #fff; }
231
232
233.meta, .meta a { color:#fff; }
234.meta a:hover { text-decoration: underline; }
235
236
237/* Falls irgendwo pauschal article { border:... } gesetzt war, Station-Karten hart entrahmen */
238article.station { border: none !important; box-shadow: none !important; }
239
240
241:root{
242  --nav-bg:#000080;           /* deine Navi-Farbe */
243  --nav-ink:#fff;
244  --nav-hover-bg:#3a3f8f;     /* dunkler beim Hover */
245  --nav-hover-ink:#ff3b3b;
245    /* rot wie “tipp:hover” */
246  --sub-bg:#000080;           /* Dropdown-Hintergrund */
247  --sub-bd:rgba(255,255,255,.12);
248}
249
250/* Container */
251#main-nav{
252  background:var(--nav-bg);
253  border-radius:12px;
254  padding:6px 10px;
255z-index: 1000!important;
256}
257
258/* Top-Level als Reihe */
259#main-nav ul, #main-nav li{ list-style:none; margin:0; padding:0; }
260#main-nav > ul.top{
261  display:flex;
262  align-items:center;
263  justify-content:center;
264  gap:10px;
265  flex-wrap:wrap;
266}
267
268/* Links */
269#main-nav a{
270  display:inline-block;
271  color:var(--nav-ink);
272  text-decoration:none;
273  padding:8px 12px;
274  border-radius:8px;
275  transition:background .2s ease, color .2s ease;
276  white-space:nowrap;
277}
278#main-nav a:hover,
279#main-nav li:focus-within > a{
280  background:var(--nav-hover-bg);
281  color:var(--nav-hover-ink);
282}
283
284/* Dropdown-Grundlage (wie zuvor) */
285#main-nav { position: relative; z-index: 1000; overflow: visible; }
286#main-nav .has-sub { position: relative; }
287#main-nav .sub{
288  display: none;
289  position: absolute;
290  left: 0;
291  top: 100%;            /* keine Lücke */
292  min-width: 240px;
293  padding: 6px 0;
294  background-color: #0b1f6d; 
295  border: 1px solid rgba(255,255,255,.25);
296  border-radius: 10px;
297  box-shadow: 0 10px 22px rgba(0,0,0,.35);
298}
299
300/* Für Touch (per JS .open setzen) */
301#main-nav li.open > .sub { display: block; }
302
303/* Nur auf Geräten mit echter Hover-Maus: per Hover öffnen */
304@media (hover: hover) and (pointer: fine) {
305  #main-nav li.has-sub:hover > .sub { display: block; }
306}
307
308/* Top-Level (Hauptpunkte in der Leiste) */
309#main-nav .top > li > a.top-link {
310  font-size: 1.1rem;      /* z.B. ~17–18px */
311  font-weight: 700;       /* fett */
312  line-height: 1.2;
313  padding: 10px 14px;     /* ggf. etwas mehr Höhe geben */
314  color: #fff;            /* sicherheitshalber */
315}
316
317/* Dropdown-Links etwas kleiner/fett-light */
318#main-nav .sub a {
319  font-size: 1rem;        /* ~16px */
320  font-weight: 600;       /* halbfett */
321  line-height: 1.2;
322  color: #fff;
323}
324
325/* Optional: auf Mobile noch eine Idee größer */
326@media (max-width: 640px){
327  #main-nav .top > li > a.top-link {
328    font-size: 1.10rem;   /* leicht größer auf Handy */
329  }
330}
331
332
333/* Pagination visibility + contrast */
334.pagination{ 
335  display:flex; flex-wrap:wrap; gap:.45rem; align-items:center; justify-content:center;
336  margin:1rem 0;
337}
338.pagination .dots{
339  color: rgba(255,255,255,.7);
340  padding:.4rem .6rem;
341}
342.pagination .page-link{
343  display:inline-block;
344  padding:.4rem .65rem;
345  border:1px solid rgba(255,255,255,.35);
346  border-radius:.5rem;
347  background: rgba(255,255,255,.06);
348  color:#fff;                 /* make links readable on dark bg */
349  text-decoration:none;
350  line-height:1;
351}
352.pagination .page-link:hover{
353  background:#fff;
354  color:#000080;              /* your brand blue */
355  border-color:#fff;
356}
357.pagination .current{
358  font-weight:700;
359  background:#fff;
360  color:#000080;
361  border-color:#fff;
362}
363.pagination .disabled{
364  opacity:.5;
365  pointer-events:none;
366  border-color:rgba(255,255,255,.2);
367  color:rgba(255,255,255,.7);
368}
369
370@media (max-width:600px){
371  .pagination .page-link{ padding:.35rem .55rem; font-size:.95rem; }
372}
373</style>
374</head>
375<body>
376<div class="wrapper">
377  <header><a href="https://www.surfmusic.de"><img src="https://www.surfmusic.de/logo2.gif" alt="Surfmusic.de Live Radio Web-TV" width="122" height="105"></a><h1>Listen to Online Radio from the Americas & Caribbean</h1></header>
378     <article>
379
380<nav id="main-nav" class="main-nav" aria-label="Primary">
381  <ul class="top">
382    <li class="has-sub">
383      <a href="#" class="top-link" aria-haspopup="true" aria-expanded="false">Online Radio &#9661;</a>
384      <ul class="sub">
385        <li><a href="https://www.surfmusic.de/afrika.htm">Africa Online Radio</a></li>
386        <li><a href="https://www.surfmusic.de/amerika.htm">Americas Online Radio</a></li>
387        <li><a href="https://www.surfmusic.de/asien.htm">Asia Online Radio</a></li>
388        <li><a href="https://www.surfmusic.de/euro.htm">Europe Online Radio</a></li>
389        <li><a href="https://www.surfmusic.de/ozean.htm">Oceania Online Radio</a></li>
390        <li><a href="https://www.surfmusic.de/radiocharts.htm">Top 100 Radio Stations</a></li>
391        <li><a href="https://www.surfmusic.de/genres.htm">Radio Genres</a></li>
392        <li><a href="https://www.surfmusic.de/cities/a.html">Cities A–Z</a></li>
393      </ul>
394    </li>
395
396    <li class="has-sub">
397      <a href="#" class="top-link" aria-haspopup="true" aria-expanded="false">Webradio &#9661;</a>
398      <ul class="sub">
399        <li><a href="https://www.surfmusic.de/internetradio/germany">Webradio Germany</a></li>
400        <li><a href="https://www.surfmusic.de/internetradio/europe">Webradio Europe</a></li>
401        <li><a href="https://www.surfmusic.de/internetradio/america">Webradio America</a></li>
402        <li><a href="https://www.surfmusic.de/internetradio/asia">Webradio Asia</a></li>
403      </ul>
404    </li>
405
406
407    <li><a href="https://www.surfmusic.de/search">Search</a></li>
408  </ul>
409</nav>
410
411
412
413    <h2>Top Regions & Countries</h2>
414    <table class="jerky">
415    <tr style="background-color:#003399;">  
416    <td class="bg">Discover hundreds of live radio stations across the Americas and the Caribbean. From the USA and Canada to Mexico, Central & South America, and island nations across the Caribbean, tune in to free music, news, and sports—instantly, no signup. Browse by country, city, or genre and start listening within seconds.</td>
417</tr>
418</table>
419<div class="border6">
420
421<div data-role="main" class="ui-content">
422  	    <table id="Sender" data-role="table" class="ui-responsive" data-mode="columntoggle" data-column-btn-text="Spalten">
423  <thead>
424    <tr>
425      <th class="top">Country</th>
426      <th class="top">Free Online Radio</th>
427      <th class="top">Live Music Stations</th>
428      <th class="top">Listen Now</th>
429    </tr>
430  </thead>
431  
432<tbody>
433  <tr>
434  <td><a class="tipp" href="https://www.surfmusic.de/canada-province.htm" title="Canada Online Radio by Province">Canada</a></td>
435  <td><a class="tipp" href="https://www.surfmusic.de/staaten.htm" title="USA Online Radio">USA</a></td>
436  <td><a class="tipp" href="https://www.surfmusic.de/central-america.htm" title="Papua New Guinea Online Radio Stations">Central America & Caribbean</a></td>
437  <td><a class="tipp" href="https://www.surfmusic.de/south-america.htm" title="South America">South America</a></td>
438</tr>
439   </tbody>
440</table>
441<br>
442<br>
443
444<table class="jerky">
445    <tr style="background-color:#003399;">  
446    <td class="bg"><p>Explore the sound of an entire hemisphere in one place. Our directory brings together FM, AM, and internet-only stations from the United States and Canada through Mexico and Central America down to South America—plus the rich radio scenes of the Caribbean. Whether you’re after today’s hits, classic rock, jazz, talk radio, or Latin favorites, you’ll find reliable live streams around the clock.</p>
447
448<p>Navigate by region to discover both national networks and local gems—major cities like New York, Los Angeles, Toronto, Vancouver, Mexico City, São Paulo, Rio de Janeiro, Buenos Aires, Bogotá, Lima, and Santiago, as well as island hubs such as Kingston, Port of Spain, San Juan, Santo Domingo, Havana, Nassau, and Bridgetown. Each station listing offers a one-click Livestream plus a link to the official website for programs and schedules.</p>
449
450<p>Prefer to browse by style? Jump straight into reggae, dancehall, soca, calypso, zouk, and kompa from the Caribbean; salsa, bachata, merengue, MPB and samba from Latin America; country, classic hits, hip-hop, EDM, and smooth jazz from North America. Sports fans can follow live commentary, while news listeners get breaking updates from public and private broadcasters in English, Spanish, Portuguese, French, Dutch, and Creole.</p>
451
452<p>All streams are free to access. If a station is temporarily unavailable, try another option—new streams are added and updated regularly. Save your favorites and come back anytime to enjoy the best of American and Caribbean radio, from Arctic Canada to the shores of Patagonia and the islands in between.</p></td>
453</tr>
454</table>
455
456
457</div>
458</div>
459</article>
460</div>
461<footer><p><a class="norm" href="https://www.surfmusic.de/privacy-policy.htm">Privacy Policy</a>&nbsp; &nbsp;&nbsp;&nbsp;<a class="norm" href="https://www.surfmusic.de/kontakt.htm" onclick="radio(this.href); return false;">Contact</a>&nbsp; &nbsp;&nbsp;&nbsp;<a class="norm" href="https://www.surfmusic.de/mailform.php">Add a Station</a>&nbsp; &nbsp;&nbsp;&nbsp;<a class="norm" href="https://www.surfmusic.de/surftv.htm">Web-TV</a><br><a class="norm" href="https://www.surfmusic.de/musictv.html">Music-TV</a>&nbsp; &nbsp;&nbsp;&nbsp;<a class="norm" href="https://www.surfmusic.de/newstv.html">News TV</a>&nbsp; &nbsp;&nbsp;&nbsp;<a class="norm" href="https://www.surfmusic.de/blog/">Blog</a>&nbsp; &nbsp;&nbsp;&nbsp;<a class="norm" href="https://www.surfmusik.de/" lang="de" hreflang="de" rel="alternate">
461Deutsch</a><br><a class="norm" href="javascript:window._sp_ && window._sp_.gdpr && window._sp_.gdpr.loadPrivacyManagerModal && window._sp_.gdpr.loadPrivacyManagerModal(1210739)"><span>Consent Management</span></a></p>
462   &nbsp; &nbsp;&nbsp;&nbsp;© <span id="year"></span> Uwe Roselius
463<script>
464  document.getElementById('year').textContent = new Date().getFullYear();
465</script>
465 
466</footer>
467<script>
468(function(){
469  const nav = document.getElementById('main-nav');
470  if (!nav) return;
471
472  // Togglen NUR auf Touch/Pen
473  nav.addEventListener('pointerdown', function(e){
474    if (e.pointerType === 'mouse') return; // Maus: Hover macht's
475    const trigger = e.target.closest('.has-sub > a.top-link');
476    if (!trigger) return;
477    e.preventDefault();
478
479    const li = trigger.parentElement;
480    const isOpen = li.classList.contains('open');
481
482    // Alles schlie en
483    nav.querySelectorAll('.has-sub.open').forEach(el => {
484      el.classList.remove('open');
485      const a = el.querySelector('a.top-link');
486      if (a) a.setAttribute('aria-expanded', 'false');
487    });
488
489    // Dieses  ffnen/schlie en
490    li.classList.toggle('open', !isOpen);
491    trigger.setAttribute('aria-expanded', String(!isOpen));
492  });
493
494  // Outside-Klick schlie t nur auf Touch/Pen
495  document.addEventListener('pointerdown', function(e){
496    if (e.pointerType === 'mouse') return;
497    if (e.target.closest('#main-nav')) return;
498    nav.querySelectorAll('.has-sub.open').forEach(el => {
499      el.classList.remove('open');
500      const a = el.querySelector('a.top-link');
501      if (a) a.setAttribute('aria-expanded', 'false');
502    });
503  });
504})();
505</script>
505
506
507</body>
508</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.