回答編集履歴

1 誤字

popobot

popobot score 6411

2017/01/10 15:49  投稿

変数に明示的にクローズが押されたかどうかを保持しておけばいいのではないでしょうか
なお、最初に描画するときにバナーが一瞬ちらつくので、javascriptで消すのではなく、css等でdisplay:noneにしておいたほうがいいと思います。
```javascript
<script>
var isClosed = false;
jQuery(function() {
   var bann = jQuery('#banner');
   bann.hide();
   jQuery(window).scroll(function () {
       if(isClosed) {
           return;
       }
       if (jQuery(this).scrollTop() > 400) { // 400pxで表示
           bann.fadeIn();
       } else {
           bann.fadeOut();
       }
   });
});
jQuery('#closebanner').click(function(){
       jQuery('#banner').hide();
       isClosed = true;
});
</script>
```
[JSFiddelの動くサンプル](https://jsfiddle.net/icchii/87gsL67L/)
[JSFiddleの動くサンプル](https://jsfiddle.net/icchii/87gsL67L/)

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る