戻る

JavaScriptで要素を置き換える

JavaScriptで要素を置き換え

イベントハンドラ(body要素に記述)

<!DOCTYPE html>
<html lang="ja-JP">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,user-scalable=yes,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.5">
<title></title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
function replaceTag(){		
	for(var i = 0; i < document.getElementsByTagName("p").length; i++){
		
		var newNode = document.createElement("h1");
		newNode.innerHTML = "置き換え後";
		
		document.getElementsByTagName("p")[i].parentNode.replaceChild(newNode, document.getElementsByTagName("p")[i]);
	}
}
</script>
</head>
<body>
<input type="button" value="click" onclick="replaceTag();">
<p>置き換え前</p>
</body>
</html>

イベントハンドラ(scriptタグ内に記述)

<!DOCTYPE html>
<html lang="ja-JP">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,user-scalable=yes,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.5">
<title></title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
window.onload = function(){
	document.getElementsByTagName("input")[0].onclick = function(){
		
		for(var i = 0; i < document.getElementsByTagName("p").length; i++){
			
			var newNode = document.createElement("h1");
			newNode.innerHTML = "置き換え後";
			
			document.getElementsByTagName("p")[i].parentNode.replaceChild(newNode, document.getElementsByTagName("p")[i]);
		}
		
	}
}
</script>
</head>
<body>
<input type="button" value="click">
<p>置き換え前</p>
</body>
</html>

イベントリスナ

<!DOCTYPE html>
<html lang="ja-JP">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,user-scalable=yes,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.5">
<title></title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
window.addEventListener("load",function(){
	document.getElementsByTagName("input")[0].addEventListener("click",function(){
		
		for(var i = 0; i < document.getElementsByTagName("p").length; i++){
			
			var newNode = document.createElement("h1");
			newNode.innerHTML = newNode.innerHTML = "置き換え後";
			
			document.getElementsByTagName("p")[i].parentNode.replaceChild(newNode, document.getElementsByTagName("p")[i]);
		}
		
	});
});
</script>
</head>
<body>
<input type="button" value="click">
<p>置き換え前</p>
</body>
</html>

jQueryのreplaceWith関数

<!DOCTYPE html>
<html lang="ja-JP">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,user-scalable=yes,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.5">
<title></title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
$(function(){
	$("input").click(function(){
		$("p").replaceWith("<h1>置き換え後</h1>");
	});
});
</script>
</head>
<body>
<input type="button" value="click">
<p>置き換え前</p>
</body>
</html>

inserted by FC2 system