Kartographer Reparse Test: Revizyonlar arasındaki fark
Görünüm
| [kontrol edilmemiş revizyon] | [kontrol edilmemiş revizyon] |
"== Kartographer innerHTML Re-Parse Test == This page demonstrates phab:T401606: nested <code><a></code> inside the mapframe container breaks when the HTML is re-parsed (e.g. by Vue's <code>v-html</code>). <mapframe width="300" height="200" zoom="13" latitude="41.353" longitude="41.31"> { "type": "Feature", "geometry": { "type": "Point", "coordinates": [41.31, 41.353] }, "properties": { "marker-symbol": "marker", "marker-size": "large", "marke..." içeriğiyle yeni sayfa oluşturdu |
Değişiklik özeti yok |
||
| 1. satır: | 1. satır: | ||
== Kartographer innerHTML Re-Parse Test == | == Kartographer innerHTML Re-Parse Test == | ||
This page demonstrates [[phab:T401606]]: | This page demonstrates [[phab:T401606]]: the <code><a></code> map container breaks when re-parsed via <code>innerHTML</code>. | ||
<mapframe width="300" height="200" zoom="13" latitude="41.353" longitude="41.31"> | <mapframe width="300" height="200" zoom="13" latitude="41.353" longitude="41.31"> | ||
| 15. satır: | 15. satır: | ||
</mapframe> | </mapframe> | ||
=== | === Test === | ||
Wait for the map to load, then tap the button: | |||
# | |||
# | <div id="test-btn" style="margin:15px 0; padding:12px 20px; background:#d33; color:white; border-radius:8px; text-align:center; font-size:16px; cursor:pointer; -webkit-tap-highlight-color:rgba(0,0,0,0.1);">TAP: Simulate innerHTML re-parse</div> | ||
<pre id="log" style="background:#f8f8f8; padding:10px; border:1px solid #ccc; font-size:13px; white-space:pre-wrap;">Waiting for test...</pre> | |||
<templatestyles src="Kartographer Reparse Test/styles.css" /> | |||
{{#tag:script| | |||
var btn = document.getElementById("test-btn"); | |||
var log = document.getElementById("log"); | |||
if (btn) btn.onclick = function() { | |||
var map = document.querySelector(".mw-kartographer-map"); | |||
if (!map) { log.textContent = "No map found"; return; } | |||
var p = map.parentElement; | |||
var ba = map.querySelectorAll("a").length; | |||
var bc = map.children.length; | |||
var bt = map.tagName; | |||
log.textContent = "BEFORE: tag=" + bt + ", " + ba + " inner <a>, " + bc + " children\n"; | |||
p.innerHTML = p.innerHTML; | |||
var m2 = p.querySelector(".mw-kartographer-map"); | |||
if (!m2) { log.textContent += "AFTER: Map container GONE!"; return; } | |||
log.textContent += "AFTER: tag=" + m2.tagName + ", " + m2.querySelectorAll("a").length + " inner <a>, " + m2.children.length + " children\n\n"; | |||
log.textContent += (m2.querySelectorAll("a").length < ba) ? "RESULT: MAP BROKEN!" : "RESULT: OK"; | |||
}; | |||
}} | |||
15.35, 8 Temmuz 2026 itibarı ile sayfanın şu anki hâli
Kartographer innerHTML Re-Parse Test
This page demonstrates phab:T401606: the <a> map container breaks when re-parsed via innerHTML.
Test
Wait for the map to load, then tap the button:
TAP: Simulate innerHTML re-parse
Waiting for test...
<templatestyles src="Kartographer Reparse Test/styles.css" />
<script> var btn = document.getElementById("test-btn"); var log = document.getElementById("log"); if (btn) btn.onclick = function() {
var map = document.querySelector(".mw-kartographer-map");
if (!map) { log.textContent = "No map found"; return; }
var p = map.parentElement;
var ba = map.querySelectorAll("a").length;
var bc = map.children.length;
var bt = map.tagName;
log.textContent = "BEFORE: tag=" + bt + ", " + ba + " inner <a>, " + bc + " children\n";
p.innerHTML = p.innerHTML;
var m2 = p.querySelector(".mw-kartographer-map");
if (!m2) { log.textContent += "AFTER: Map container GONE!"; return; }
log.textContent += "AFTER: tag=" + m2.tagName + ", " + m2.querySelectorAll("a").length + " inner <a>, " + m2.children.length + " children\n\n";
log.textContent += (m2.querySelectorAll("a").length < ba) ? "RESULT: MAP BROKEN!" : "RESULT: OK";
}; </script>
