❌ 错误: ${Core.escapeHtml(e.message.split('\n')[0])}
${e.message.includes('提示:') ? `
${Core.escapeHtml(e.message.split('提示:')[1])}
` : ''}
`;
resultBox.innerHTML = errorHtml;
this.setLoading('#btn-summary', false);
console.error('[AI速读] doSummary 错误:', e);
}
}
async doChat() {
if (this.isGenerating) return;
if (this.chatHistory.length === 0) {
return alert('请先在「总结」页面生成网页内容摘要');
}
const input = this.Q('#chat-input');
const txt = input.value.trim();
if (!txt) return;
input.value = '';
input.style.height = 'auto';
this.Q('#chat-empty').classList.add('hidden');
this.userScrolledUp = false;
this.addBubble('user', txt);
this.chatHistory.push({ role: 'user', content: txt });
this.userMessageCount++;
this.updateMessageCount();
const msgDiv = this.addBubble('ai', '');
msgDiv.innerHTML = `