.faq-input-group { margin-bottom: 20px; padding: 15px; background: #fff; border: 1px solid #ddd; border-radius: 5px; }
.faq-input-group label { display: block; font-weight: bold; margin-bottom: 5px; font-size: 14px; }
.faq-input-group input, .faq-input-group textarea { width: 100%; padding: 10px; margin-bottom: 10px; border: 1px solid #ccc; border-radius: 4px; box-sizing: border-box; font-family: inherit; }
.faq-btn { padding: 10px 20px; cursor: pointer; border: none; border-radius: 4px; font-weight: 600; transition: background 0.2s; }
.btn-add { background-color: #2271b1; color: white; margin-right: 10px; }
.btn-add:hover { background-color: #135e96; }
.btn-generate { background-color: #008a20; color: white; }
.btn-generate:hover { background-color: #007117; }
.btn-copy { background-color: #646970; color: white; margin-top: 10px; }
#schema-output { width: 100%; height: 200px; margin-top: 20px; font-family: monospace; font-size: 12px; padding: 10px; border: 1px solid #ccc; background: #eee; display: none; }
.faq-header { margin-top: 0; color: #1d2327; }
var faqCount = 1;
function addNewFaqRow() {
faqCount++;
var container = document.getElementById('faq-list');
var div = document.createElement('div');
div.className = 'faq-input-group';
div.innerHTML = '' +
" +
'' +
'';
container.appendChild(div);
}
function generateFaqSchema() {
var questions = document.getElementsByClassName('faq-q');
var answers = document.getElementsByClassName('faq-a');
var mainEntity = [];
for (var i = 0; i 0) {
output.value = '\n' + JSON.stringify(schema, null, 2) + '\n';
output.style.display = 'block';
copyBtn.style.display = 'inline-block';
} else {
alert("Please fill in at least one question and answer.");
}
}
function copySchemaToClipboard() {
var copyText = document.getElementById("schema-output");
copyText.select();
copyText.setSelectionRange(0, 99999);
document.execCommand("copy");
var btn = document.getElementById("copy-btn");
var originalText = btn.innerText;
btn.innerText = "Copied!";
btn.style.backgroundColor = "#008a20";
setTimeout(function() {
btn.innerText = originalText;
btn.style.backgroundColor = "#646970";
}, 2000);
}
SEO FAQ Schema Generator
Add your questions and answers to generate JSON-LD Schema for Google Search results.