回答編集履歴

1

sample

2018/03/20 03:00

投稿

yambejp
yambejp

スコア114837

test CHANGED
@@ -5,3 +5,61 @@
5
5
  (ただしおなじドメイン内という前提)
6
6
 
7
7
  不用意にリンク先をいじるのは管理が煩雑になるだけでしょう
8
+
9
+
10
+
11
+ # sample
12
+
13
+ 別ドメインにとばしたいということなので一応sampleつけておきます
14
+
15
+ 「http(s)://」で始まるリンクについて自分のパラメータを引き継ぐようにしてあります
16
+
17
+ ただし受け側によってパラメータの受け取り方は異なると思いますので
18
+
19
+ こまかい調整は必要でしょう。
20
+
21
+
22
+
23
+ ```javascript
24
+
25
+ <script>
26
+
27
+ window.addEventListener('DOMContentLoaded', function(e){
28
+
29
+ var param=location.search;
30
+
31
+ if(param.indexOf("?")>=0){
32
+
33
+ Array.prototype.forEach.call(document.querySelectorAll('a[href]'),function(x){
34
+
35
+ var href=x.getAttribute("href");
36
+
37
+ if(href.match(/^https?://.+/)){
38
+
39
+ x.setAttribute("href",href+param);
40
+
41
+ }
42
+
43
+ });
44
+
45
+ }
46
+
47
+ });
48
+
49
+ </script>
50
+
51
+ <a href="http://www.google.co.jp">google</a>
52
+
53
+ <a href="http://www.yahoo.co.jp">yahoo</a>
54
+
55
+ <hr>
56
+
57
+ 以下自分のパラメータを切り替える処理<br>
58
+
59
+ <a href="?param=1">param=1</a>
60
+
61
+ <a href="?param=2">param=2</a>
62
+
63
+ <a href="?param=3">param=3</a>
64
+
65
+ ```