Cách làm 1 thẻ đứng yên khi cuộn màn hình

Thảo luận trong 'Style & Template Questions' bắt đầu bởi Bcat9505, 10/7/14.

1votes
5/5, 1 vote

  1. Bcat9505

    Bcat9505 Moderator Staff Member

    Bài viết:
    1,335
    Likes :
    494
    Mình muốn giữ cho 1 cái xyz đứng yên khi cuộn màn hình, cái xyz này nằm ở khoảng 1,5 lần cuộn trang là thấy nó.
    Trước khi cuộn tới thì xyz vẫn ở đó, khi cuộn đến xyz thì nó cố định cái top 1 khoảng xxpx.
    vậy phải làm sao
     
    Đang tải...
  2. Bvn.vn

    Bvn.vn Active Member

    Bài viết:
    1,832
    Likes :
    401
    Cứ như toán học ấy nhỉ ? :D
     
    Bcat9505 thích bài này.
  3. Bcat9505

    Bcat9505 Moderator Staff Member

    Bài viết:
    1,335
    Likes :
    494
    hehe, mà hỉu ý mình chưa...tại k biết nói sao cho hỉu
     
  4. duongsang97

    duongsang97 New Member

    Bài viết:
    59
    Likes :
    7
    bạn nói 1 cách cụ thể hơn được không. nói kiểu trìu tượng này khó hiểu quá
     
    Bcat9505 thích bài này.
  5. zoom360

    zoom360 Member

    Bài viết:
    392
    Likes :
    113
    Check google tìm cái js scroll to fix ấy bạn
     
  6. Bcat9505

    Bcat9505 Moderator Staff Member

    Bài viết:
    1,335
    Likes :
    494
    Mã:
    <script>
    
    
    $(window).scroll(function() {
      $(".pin-container").each(function() {
      var s = $(window).scrollTop();
      var a = $(this);
      var b = $(".chacha", this);
      if (a.offset().top-1200 < s ) {
       
      b.css({
      position: "fixed",
      top: "60px"
      });
      } else {
      b.css({
      position: "absolute",
      top: "100px"
      });
      }
      } else {
      b.css({
      position: "relative",
      top: ""
      });
      }
      });
       
    </script>
    vd như thê này hả b?
     
  7. Bcat9505

    Bcat9505 Moderator Staff Member

    Bài viết:
    1,335
    Likes :
    494
    là đoạn này bạn :
    Mã:
    <xen:if is="{$RecentThreads}">
       <xen:require css="discussion_list.css" />
       <xen:require css="EWRblock_RecentThreads.css" />
    <script>
    
    
    $(window).scroll(function() {
      $(".pin-container").each(function() {
      var s = $(window).scrollTop();
      var a = $(this);
      var b = $(".chacha", this);
      if (a.offset().top-1200 < s ) {
     
      b.css({
      position: "fixed",
      top: "60px"
      });
      } else {
      b.css({
      position: "absolute",
      top: "100px"
      });
      }
      } else {
      b.css({
      position: "relative",
      top: ""
      });
      }
      });
     
    </script>
       <xen:if is="{$position} == 'top-left' OR {$position} == 'mid-left' OR {$position} == 'btm-left' OR {$position} == 'sidebar'">
    
         <div class="chacha" style="position: relative;">
    
           <div class="RecentThreads_bcat">
             <h3>{xen:phrase EWRblock_RecentThreads_title}</h3>
    
             <ol class="discussionListItems">
               <xen:foreach loop="$RecentThreads" value="$thread">
                 <li id="thread-{$thread.thread_id}" class="{$thread.discussion_state} {xen:if {$thread.sticky}, 'sticky'} {xen:if {$thread.isNew}, 'unread'}" data-author="{$thread.username}">
                   <xen:avatar user="$thread" size="s" img="true" />
                   <div class="title">
                     <a href="{xen:link "threads{xen:if '{$thread.isNew} AND {$thread.haveReadData}', '/unread'}", $thread}"
                       title="{xen:if '{$thread.isNew} AND {$thread.haveReadData}', {xen:phrase go_to_first_unread_message}}"
                       class="{xen:if $thread.hasPreview, PreviewTooltip}"
                       data-previewUrl="{xen:if $thread.hasPreview, {xen:link threads/preview, $thread}}">{xen:helper snippet, $thread.title, 50}</a>
                   </div>
                   <div class="muted">
                     <a href="{xen:link members, $thread.lastPostInfo}">{$thread.lastPostInfo.username}</a> @
                     <a{xen:if '{$visitor.user_id}', ' href="{xen:link posts, $thread.lastPostInfo}" title="{xen:phrase go_to_last_message}"'} class="dateTime"><xen:datetime time="$thread.lastPostInfo.post_date" /></a>
                   </div>
                 </li>
               </xen:foreach>
             </ol>
           </div>
         </div>
    
       <xen:else />
    
         <xen:require css="inline_mod.css" />
         <xen:require js="js/xenforo/discussion_list.js" />
    
         <form action="{xen:link inline-mod/thread/switch}" method="post"
           class="DiscussionList InlineModForm"
           data-cookieName="threads"
           data-controls="#InlineModControls"
           data-imodOptions="#ModerationSelect option">
    
           <div class="discussionList section sectionMain" id="recentThreads">
             <dl class="sectionHeaders">
               <dt class="posterAvatar"></dt>
               <dd class="main">
                 <a class="title"><span>{xen:phrase EWRblock_RecentThreads_title}</span></a>
                 <a class="postDate"><span>{xen:phrase start_date}</span></a>
               </dd>
               <dd class="stats">
                 <a class="major"><span>{xen:phrase replies}</span></a>
                 <a class="minor"><span>{xen:phrase views}</span></a>
               </dd>
               <dd class="lastPost"><a><span>{xen:phrase last_message}</span></a></dd>
             </dl>
    
             <ol class="discussionListItems">
               <xen:foreach loop="$RecentThreads" value="$thread">
                 <xen:include template="thread_list_item">
                   <xen:map from="$thread.showForumLink" to="$showForumLink" />
                 </xen:include>
               </xen:foreach>
             </ol>
           </div>
    
           <input type="hidden" name="_xfToken" value="{$visitor.csrf_token_page}" />
         </form>
    
       </xen:if>
    
       <xen:include template="preview_tooltip" />
    </xen:if>
    Mình chèn recent này vô porta nó nằm gần cuối trang
     
  8. zoom360

    zoom360 Member

    Bài viết:
    392
    Likes :
    113
    Tải đoạn js này về http://vnnet.org/js/vnnet/jquery-scrolltofixed.js
    lưu lại thành : jquery-scrolltofixed.js, up lên root
    Chèn đoạn này vào PAGE_CONTAINER
    Nhớ chổ màu đỏ thay link bằng link đoạn js bạn up lên root, thay id đoạn cần stick vào. Đoạn js trên nó sẽ stick chổ bạn cần lên top trong trình duyệt.
    Bạn muốn cách top bao nhiêu thì vào edit lại.
     
    Bcat9505 thích bài này.
  9. Bcat9505

    Bcat9505 Moderator Staff Member

    Bài viết:
    1,335
    Likes :
    494
    <script type="text/javascript">
    $(document).ready(function() {
    $('#chacha').scrollToFixed();
    });
    </script>
    đoạn cần stick là gì b^^
     
  10. zoom360

    zoom360 Member

    Bài viết:
    392
    Likes :
    113
    id của 1 thẻ , hoặc class nào cần cho nó đứng yên khi lăn chuột
     
    Bcat9505 thích bài này.
  11. Bcat9505

    Bcat9505 Moderator Staff Member

    Bài viết:
    1,335
    Likes :
    494
    Đoạn id mình cần giữ yên : <div class="RecentThreads_bcat">
    Thêm vào page-co.. :
    <script type="text/javascript" src="js/js/jquery-scrolltofixed.js"></script>
    <script type="text/javascript">
    $(document).ready(function() {
    $('#RecentThreads_bcat').scrollToFixed();
    });
    </script>
    .... vẫn thấy k có gì :(. cái js trên k cần edit gì phải k
     
  12. zoom360

    zoom360 Member

    Bài viết:
    392
    Likes :
    113
    Sorry bạn tải thêm đoạn js này : http://vnnet.org/js/vnnet/jquery-scrolltofixed-min.js up lên chung với đoạn js kia nhé !
    Nếu vẫn chưa stick được thì bạn đóng toàn bộ đoạn Recent_thread trên bằng thẻ <div id="RecentThreads_bcat">....</div> xem sao nhé !
     
    Bcat9505 thích bài này.
  13. Bcat9505

    Bcat9505 Moderator Staff Member

    Bài viết:
    1,335
    Likes :
    494
  14. Bcat9505

    Bcat9505 Moderator Staff Member

    Bài viết:
    1,335
    Likes :
    494
comments powered by Disqus

Chia sẻ trang này

Đang tải...