[{"content":"📊 行情概览 标的 价格 涨跌 腾讯 434.6 -2.38% 🔴 茅台 1297.41 +0.42% 🟢 特斯拉 319.69 -14.52% 🔴 建滔积层板 37.72 -7.32% 🔴 🔊 朗读全文 ⏹ 停止 ","permalink":"https://kkyy-site.pages.dev/posts/2026%E5%B9%B47%E6%9C%8824%E6%97%A5-%E6%8A%95%E8%B5%84%E6%99%9A%E6%8A%A5/","summary":"\u003ch2 id=\"-行情概览\"\u003e📊 行情概览\u003c/h2\u003e\n\u003ctable\u003e\n\t\u003cthead\u003e\n\t\t\t\u003ctr\u003e\n\t\t\t\t\t\u003cth style=\"text-align: left\"\u003e标的\u003c/th\u003e\n\t\t\t\t\t\u003cth style=\"text-align: center\"\u003e价格\u003c/th\u003e\n\t\t\t\t\t\u003cth style=\"text-align: center\"\u003e涨跌\u003c/th\u003e\n\t\t\t\u003c/tr\u003e\n\t\u003c/thead\u003e\n\t\u003ctbody\u003e\n\t\t\t\u003ctr\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: left\"\u003e腾讯\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e434.6\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e-2.38% 🔴\u003c/td\u003e\n\t\t\t\u003c/tr\u003e\n\t\t\t\u003ctr\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: left\"\u003e茅台\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e1297.41\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e+0.42% 🟢\u003c/td\u003e\n\t\t\t\u003c/tr\u003e\n\t\t\t\u003ctr\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: left\"\u003e特斯拉\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e319.69\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003cstrong\u003e-14.52%\u003c/strong\u003e 🔴\u003c/td\u003e\n\t\t\t\u003c/tr\u003e\n\t\t\t\u003ctr\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: left\"\u003e建滔积层板\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e37.72\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e-7.32% 🔴\u003c/td\u003e\n\t\t\t\u003c/tr\u003e\n\t\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cdiv class=\"tts-wrapper\"\u003e\n  \u003cbutton class=\"tts-btn\" onclick=\"ttsPlay(this)\" data-encoded=\"\"\u003e🔊 朗读全文\u003c/button\u003e\n  \u003cbutton class=\"tts-stop\" onclick=\"ttsStop(this)\" style=\"display:none\"\u003e⏹ 停止\u003c/button\u003e\n\u003c/div\u003e\n\n\u003cscript\u003e\n\nfunction ttsDecode(str) {\n  return new TextDecoder().decode(\n    Uint8Array.from(atob(str), function(c) { return c.charCodeAt(0); })\n  );\n}\n\n\nfunction getArticleBody() {\n  \n  var selectors = [\n    '.post-content',\n    'article .content',\n    '.entry-content',\n    'main article',\n    '.page-content'\n  ];\n  for (var i = 0; i \u003c selectors.length; i++) {\n    var el = document.querySelector(selectors[i]);\n    if (el) return el;\n  }\n  return document.querySelector('main') || document.body;\n}\n\n\nfunction ttsPlay(btn) {\n  if (window.__ttsSpeaking) { speechSynthesis.cancel(); window.__ttsSpeaking = false; return; }\n\n  var wrapper = btn.closest('.tts-wrapper');\n  var stopBtn = wrapper.querySelector('.tts-stop');\n\n  \n  var raw = ttsDecode(btn.dataset.encoded);\n  var tmp = document.createElement('div');\n  tmp.innerHTML = raw;\n  var text = tmp.textContent.trim();\n  if (!text) return;\n\n  \n  var sentences = text.split(/(?\u003c=[。！？.!?\\n])/g).filter(function(s) { return s.trim(); });\n  if (!sentences.length) return;\n\n  \n  var body = getArticleBody();\n  if (!body) return;\n\n  \n  var boundaries = [];\n  var pos = 0;\n  sentences.forEach(function(s) {\n    boundaries.push(pos);\n    pos += s.length;\n  });\n\n  \n  body.innerHTML = sentences.map(function(s, i) {\n    var safe = document.createElement('span');\n    safe.textContent = s;\n    return '\u003cspan class=\"tts-s\" data-i=\"' + i + '\"\u003e' + safe.innerHTML + '\u003c/span\u003e';\n  }).join('');\n\n  function highlight(i) {\n    body.querySelectorAll('.tts-s').forEach(function(el) { el.classList.remove('active'); });\n    var target = body.querySelector('.tts-s[data-i=\"' + i + '\"]');\n    if (target) {\n      target.classList.add('active');\n      target.scrollIntoView({ behavior: 'smooth', block: 'center' });\n    }\n  }\n\n  function sentIdx(charIdx) {\n    for (var i = boundaries.length - 1; i \u003e= 0; i--) {\n      if (charIdx \u003e= boundaries[i]) return i;\n    }\n    return 0;\n  }\n\n  var utterance = new SpeechSynthesisUtterance(text);\n  \n  var voices = speechSynthesis.getVoices();\n  var zhVoice = voices.find(function(v) { return v.lang.startsWith('zh'); });\n  if (zhVoice) utterance.voice = zhVoice;\n  \n  window.__ttsUtterance = utterance;\n  window.__ttsSpeaking = true;\n\n  utterance.onboundary = function(e) {\n    if (e.name === 'word' || e.name === 'sentence') {\n      highlight(sentIdx(e.charIndex));\n    }\n  };\n\n  utterance.onend = function() {\n    window.__ttsSpeaking = false;\n    btn.innerHTML = '🔊 朗读全文';\n    stopBtn.style.display = 'none';\n    body.querySelectorAll('.tts-s').forEach(function(el) { el.classList.remove('active'); });\n  };\n\n  utterance.onerror = function() {\n    window.__ttsSpeaking = false;\n    btn.innerHTML = '🔊 朗读全文';\n    stopBtn.style.display = 'none';\n  };\n\n  btn.innerHTML = '⏸ 暂停';\n  stopBtn.style.display = '';\n  speechSynthesis.speak(utterance);\n}\n\n\nfunction ttsStop(btn) {\n  speechSynthesis.cancel();\n  window.__ttsSpeaking = false;\n  var wrapper = btn.closest('.tts-wrapper');\n  wrapper.querySelector('.tts-btn').innerHTML = '🔊 朗读全文';\n  btn.style.display = 'none';\n  var body = getArticleBody();\n  if (body) body.querySelectorAll('.tts-s').forEach(function(el) { el.classList.remove('active'); });\n}\n\n\nif (typeof speechSynthesis !== 'undefined') {\n  speechSynthesis.getVoices();\n  speechSynthesis.onvoiceschanged = function() { speechSynthesis.getVoices(); };\n}\n\u003c/script\u003e\n\n\u003cstyle\u003e\n.tts-wrapper {\n  margin: 16px 0;\n  display: flex;\n  gap: 8px;\n  align-items: center;\n}\n.tts-btn, .tts-stop {\n  cursor: pointer;\n  padding: 8px 18px;\n  border: 1px solid var(--border, #ddd);\n  border-radius: 8px;\n  background: var(--code-bg, #f5f5f5);\n  font-size: 15px;\n  color: var(--primary, #333);\n  line-height: 1.5;\n  transition: all 0.2s ease;\n}\n.tts-btn:hover, .tts-stop:hover { \n  opacity: 0.85;\n  transform: translateY(-1px);\n}\n.tts-btn { background: var(--primary-btn-bg, #e8f4fd); border-color: var(--primary-btn-border, #b3d4fc); }\n.tts-stop { background: #fee; border-color: #fcc; }\n.tts-s {\n  transition: background 0.25s ease;\n  border-radius: 3px;\n  padding: 1px 0;\n}\n.tts-s.active {\n  background: #fff3cd !important;\n  box-shadow: 0 0 0 2px #ffe58f !important;\n  border-radius: 3px;\n  padding: 2px 0;\n}\n[data-theme=\"dark\"] .tts-s.active {\n  background: #3d3520 !important;\n  box-shadow: 0 0 0 2px #8b7500 !important;\n}\n\u003c/style\u003e","title":"2026年7月24日 投资晚报"},{"content":"📊 行情概览 标的 价格 涨跌 腾讯 440.6 -7.05% 🔴 茅台 1292.01 -1.00% 🔴 特斯拉 374.01 -1.30% 🔴 建滔积层板 40.6 +0.84% 🟢 🔊 朗读全文 ⏹ 停止 ","permalink":"https://kkyy-site.pages.dev/posts/2026%E5%B9%B47%E6%9C%8823%E6%97%A5-%E6%8A%95%E8%B5%84%E6%99%9A%E6%8A%A5/","summary":"\u003ch2 id=\"-行情概览\"\u003e📊 行情概览\u003c/h2\u003e\n\u003ctable\u003e\n\t\u003cthead\u003e\n\t\t\t\u003ctr\u003e\n\t\t\t\t\t\u003cth style=\"text-align: left\"\u003e标的\u003c/th\u003e\n\t\t\t\t\t\u003cth style=\"text-align: center\"\u003e价格\u003c/th\u003e\n\t\t\t\t\t\u003cth style=\"text-align: center\"\u003e涨跌\u003c/th\u003e\n\t\t\t\u003c/tr\u003e\n\t\u003c/thead\u003e\n\t\u003ctbody\u003e\n\t\t\t\u003ctr\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: left\"\u003e腾讯\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e440.6\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e\u003cstrong\u003e-7.05%\u003c/strong\u003e 🔴\u003c/td\u003e\n\t\t\t\u003c/tr\u003e\n\t\t\t\u003ctr\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: left\"\u003e茅台\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e1292.01\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e-1.00% 🔴\u003c/td\u003e\n\t\t\t\u003c/tr\u003e\n\t\t\t\u003ctr\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: left\"\u003e特斯拉\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e374.01\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e-1.30% 🔴\u003c/td\u003e\n\t\t\t\u003c/tr\u003e\n\t\t\t\u003ctr\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: left\"\u003e建滔积层板\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e40.6\u003c/td\u003e\n\t\t\t\t\t\u003ctd style=\"text-align: center\"\u003e+0.84% 🟢\u003c/td\u003e\n\t\t\t\u003c/tr\u003e\n\t\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cdiv class=\"tts-wrapper\"\u003e\n  \u003cbutton class=\"tts-btn\" onclick=\"ttsPlay(this)\" data-encoded=\"\"\u003e🔊 朗读全文\u003c/button\u003e\n  \u003cbutton class=\"tts-stop\" onclick=\"ttsStop(this)\" style=\"display:none\"\u003e⏹ 停止\u003c/button\u003e\n\u003c/div\u003e\n\n\u003cscript\u003e\n\nfunction ttsDecode(str) {\n  return new TextDecoder().decode(\n    Uint8Array.from(atob(str), function(c) { return c.charCodeAt(0); })\n  );\n}\n\n\nfunction getArticleBody() {\n  \n  var selectors = [\n    '.post-content',\n    'article .content',\n    '.entry-content',\n    'main article',\n    '.page-content'\n  ];\n  for (var i = 0; i \u003c selectors.length; i++) {\n    var el = document.querySelector(selectors[i]);\n    if (el) return el;\n  }\n  return document.querySelector('main') || document.body;\n}\n\n\nfunction ttsPlay(btn) {\n  if (window.__ttsSpeaking) { speechSynthesis.cancel(); window.__ttsSpeaking = false; return; }\n\n  var wrapper = btn.closest('.tts-wrapper');\n  var stopBtn = wrapper.querySelector('.tts-stop');\n\n  \n  var raw = ttsDecode(btn.dataset.encoded);\n  var tmp = document.createElement('div');\n  tmp.innerHTML = raw;\n  var text = tmp.textContent.trim();\n  if (!text) return;\n\n  \n  var sentences = text.split(/(?\u003c=[。！？.!?\\n])/g).filter(function(s) { return s.trim(); });\n  if (!sentences.length) return;\n\n  \n  var body = getArticleBody();\n  if (!body) return;\n\n  \n  var boundaries = [];\n  var pos = 0;\n  sentences.forEach(function(s) {\n    boundaries.push(pos);\n    pos += s.length;\n  });\n\n  \n  body.innerHTML = sentences.map(function(s, i) {\n    var safe = document.createElement('span');\n    safe.textContent = s;\n    return '\u003cspan class=\"tts-s\" data-i=\"' + i + '\"\u003e' + safe.innerHTML + '\u003c/span\u003e';\n  }).join('');\n\n  function highlight(i) {\n    body.querySelectorAll('.tts-s').forEach(function(el) { el.classList.remove('active'); });\n    var target = body.querySelector('.tts-s[data-i=\"' + i + '\"]');\n    if (target) {\n      target.classList.add('active');\n      target.scrollIntoView({ behavior: 'smooth', block: 'center' });\n    }\n  }\n\n  function sentIdx(charIdx) {\n    for (var i = boundaries.length - 1; i \u003e= 0; i--) {\n      if (charIdx \u003e= boundaries[i]) return i;\n    }\n    return 0;\n  }\n\n  var utterance = new SpeechSynthesisUtterance(text);\n  \n  var voices = speechSynthesis.getVoices();\n  var zhVoice = voices.find(function(v) { return v.lang.startsWith('zh'); });\n  if (zhVoice) utterance.voice = zhVoice;\n  \n  window.__ttsUtterance = utterance;\n  window.__ttsSpeaking = true;\n\n  utterance.onboundary = function(e) {\n    if (e.name === 'word' || e.name === 'sentence') {\n      highlight(sentIdx(e.charIndex));\n    }\n  };\n\n  utterance.onend = function() {\n    window.__ttsSpeaking = false;\n    btn.innerHTML = '🔊 朗读全文';\n    stopBtn.style.display = 'none';\n    body.querySelectorAll('.tts-s').forEach(function(el) { el.classList.remove('active'); });\n  };\n\n  utterance.onerror = function() {\n    window.__ttsSpeaking = false;\n    btn.innerHTML = '🔊 朗读全文';\n    stopBtn.style.display = 'none';\n  };\n\n  btn.innerHTML = '⏸ 暂停';\n  stopBtn.style.display = '';\n  speechSynthesis.speak(utterance);\n}\n\n\nfunction ttsStop(btn) {\n  speechSynthesis.cancel();\n  window.__ttsSpeaking = false;\n  var wrapper = btn.closest('.tts-wrapper');\n  wrapper.querySelector('.tts-btn').innerHTML = '🔊 朗读全文';\n  btn.style.display = 'none';\n  var body = getArticleBody();\n  if (body) body.querySelectorAll('.tts-s').forEach(function(el) { el.classList.remove('active'); });\n}\n\n\nif (typeof speechSynthesis !== 'undefined') {\n  speechSynthesis.getVoices();\n  speechSynthesis.onvoiceschanged = function() { speechSynthesis.getVoices(); };\n}\n\u003c/script\u003e\n\n\u003cstyle\u003e\n.tts-wrapper {\n  margin: 16px 0;\n  display: flex;\n  gap: 8px;\n  align-items: center;\n}\n.tts-btn, .tts-stop {\n  cursor: pointer;\n  padding: 8px 18px;\n  border: 1px solid var(--border, #ddd);\n  border-radius: 8px;\n  background: var(--code-bg, #f5f5f5);\n  font-size: 15px;\n  color: var(--primary, #333);\n  line-height: 1.5;\n  transition: all 0.2s ease;\n}\n.tts-btn:hover, .tts-stop:hover { \n  opacity: 0.85;\n  transform: translateY(-1px);\n}\n.tts-btn { background: var(--primary-btn-bg, #e8f4fd); border-color: var(--primary-btn-border, #b3d4fc); }\n.tts-stop { background: #fee; border-color: #fcc; }\n.tts-s {\n  transition: background 0.25s ease;\n  border-radius: 3px;\n  padding: 1px 0;\n}\n.tts-s.active {\n  background: #fff3cd !important;\n  box-shadow: 0 0 0 2px #ffe58f !important;\n  border-radius: 3px;\n  padding: 2px 0;\n}\n[data-theme=\"dark\"] .tts-s.active {\n  background: #3d3520 !important;\n  box-shadow: 0 0 0 2px #8b7500 !important;\n}\n\u003c/style\u003e","title":"2026年7月23日 投资晚报"}]