D3
OG
Old school D3 from simpler times
All examples
By author
By category
About
kyroskoh
Full window
Github gist
sla-training_session2:Custom Infowindows
<!DOCTYPE html> <html> <head> <title>Custom infowindow example | CartoDB.js</title> <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> <link rel="shortcut icon" href="https://cartodb.com/assets/favicon.ico" /> <link rel="stylesheet" href="https://cartodb-libs.global.ssl.fastly.net/cartodb.js/v3/3.15/themes/css/cartodb.css" /> <script src="https://cartodb-libs.global.ssl.fastly.net/cartodb.js/v3/3.15/cartodb.js"></script> <style> html, body, #map { height: 100%; padding: 0; margin: 0; } </style> </head> <body> <div id="map"></div> <script type="infowindow/html" id="infowindow_template"> <div class="cartodb-popup"> <a href="#close" class="cartodb-popup-close-button close">x</a> <div class="cartodb-popup-content-wrapper"> <div class="cartodb-popup-content"> <h4>This is...</h4> <p>{{content.data.name}}</p> <h4>It has a population of<h4> <p>{{content.data.pop_max}}</p> </div> </div> <div class="cartodb-popup-tip-container"></div> </div> </script> <script> function main() { var map = L.map('map', { zoomControl: false, center: [40.418709, -3.703277], zoom: 3 }); // add a nice baselayer from Stamen L.tileLayer('https://{s}.tile.stamen.com/toner/{z}/{x}/{y}.png', { attribution: 'Stamen and CartoDB attribution' }).addTo(map); cartodb.createLayer(map, { user_name: 'trainer02', maps_api_template: "https://sla-training.cartodb.solutions:443/user/{user}", sql_api_template: "https://sla-training.cartodb.solutions:443/user/{user}", tiler_protocol: "http", tiler_domain: "sla-training.cartodb.solutions", tiler_port: "80", filter: "mapnik", type: 'cartodb', sublayers: [{ sql: 'SELECT * FROM ne_10m_populated_places_simple', cartocss: '#ne_10m_populated_places_simple {marker-fill:#f60;}', interactivity: 'cartodb_id, name, pop_max' }] },{/*options here*/}) .addTo(map) .on('done', function(layer) { var sublayer = layer.getSubLayer(0); cdb.vis.Vis.addInfowindow(map, layer.getSubLayer(0), ['cartodb_id', 'name', 'pop_max'], {infowindowTemplate: $('#infowindow_template').html()}); }); } window.onload = main; </script> </body> </html>
https://cartodb-libs.global.ssl.fastly.net/cartodb.js/v3/3.15/cartodb.js