IDと一致する場合に都市名を入力したい単純なヘッダーがあります。私は現在使用replaceWith
していますが、初めて動作するようです。理由がわかりませんか?
関数は次のとおりです。
function toggleDetails() {
$(".pin").click(function() {
var cityName = $(this).attr('id');
$(".city-details").toggle();
if (cityName === 'Miami') {
$('h3#cityName').replaceWith("Miami");
}
else if(cityName === 'Philadelphia') {
$('h3#cityName').replaceWith("Philadelphia");
}
else if (cityName === 'Chicago') {
$('h3#cityName').replaceWith("Chicago");
}
else if (cityName === 'Los-Angeles') {
$('h3#cityName').replaceWith("Los Angeles");
}
else if (cityName === 'Houston') {
$('h3#cityName').replaceWith("Houston");
}
else if (cityName === 'San-Diego'){
$('h3#cityName').replaceWith("San Diego");
}
else if (cityName === 'Atlanta') {
$('h3#cityName').replaceWith("Atlanta");
}
console.log(cityName);
});
}
HTML:
<p class="pin totally newyork" id="NewYork">
New York
</p>
<p class="pin barely boston" id="Boston">
Boston
</p>
<p class="pin fairly philadelphia" id="Philadelphia">
Philadelphia
</p>
<p class="pin barely chicago" id="Chicago">
Chicago
</p>
<p class="pin barely la" id="Los-Angeles">
Los Angeles
</p>
<p class="pin fairly houston" id="Houston">
Houston
</p>