CGI本体には手を付けないという条件になります(手を付けた場合かなり複雑になるかと思い、思ったように作動しないときのリカバリーに手がかかりそうゆえ)
JavaScriptでURLのパラメータを抽出し(パラメータは/detail.cgi?page=1&status=viewのうちpage=1の数字部分が変化します ただpage=10やpage=11も存在しますのでpage=1&まで抽出して条件判断できればと思います
CSSは属性セレクタのE[foo*=”bar”]が利用できるのでしょうか?
よろしくお願いいたします
こんな感じで。
<html> <body> <!-- パラメータに page=1 が入っているときだけ表示されるリンク --> <a href="..." class="shy_link">aaaaaaaaaa</a> <a href="..." class="shy_link">aaaaaaaaaa</a> <a href="..." class="shy_link">aaaaaaaaaa</a> <!-- 普通に表示されるリンク --> <a href="...">bbbbbbbbbb</a> <a href="...">bbbbbbbbbb</a> <a href="...">bbbbbbbbbb</a> </body> <!-- ここから、追加する css と javascript --> <style> a.shy_link { display: none; } </style> <script> window.addEventListener("DOMContentLoaded", function() { var mat = /page=(\d+)\b/.exec(location.search); if (mat && mat[1] == 1) { Array.from(document.querySelectorAll("a.shy_link")).forEach(function(a) { a.style.display = "inline"; }); } }); </script> </html>
page=1 のときにだけ表示しするリンクには、class="shy_link" を指定します。
実はうまくいかないため設置の仕方がまちがえていないか いろいろチェックしなおしておりました
すみません。
javascript の部分を、以下のものに差し替えてください。
window.addEventListener("DOMContentLoaded", function() { var mat = /page=(\d+)\b/.exec(location.search); if (mat && mat[1] == 1) { Array.prototype.forEach.call(document.querySelectorAll("a.shy_link"), function(a) { a.style.display = "inline"; }); } });
Array.from() が正式な仕様になっていないのを失念しておりました。