2013-02-16 34 views
16

Tôi đã cố gắng sử dụng cửa sổ bật lên twitter bootstrap trên trang web của mình khi tôi phát hiện ra rằng nó không hoạt động khi được đặt bên dưới <div> với ng-repeat. Nó hoạt động tốt ở đầu trong một lớp div mà không chứa ng- không ai biết tại sao nó xảy ra và làm thế nào tôi có thể làm việc xung quanh vấn đề này?twitter popstrap popover không hoạt động với angularjs

<h3>Students Without Team</h3> 
<div class="accordion" id="studentNoTeamAccordion" > 
     <a href="#" class="btn btn-large btn-primary" rel="popover"data-html="true" 
      data-content=" 
       <form> 
        <textarea class='input-xlarge' rows='12' type='text'></textarea> 
        <P> 
         <input class='btn btn-primary' type='submit' value='Send' /> 
       </form>" 
      data-placement="right" data-original-title="Enquiries">Send Enquiries 
     </a> 
    <div class="accordion-group" ng-repeat="(key,val) in stud_finding">< 
     <a href="#" class="btn btn-large btn-primary" rel="popover"data-html="true" 
     data-content=" 
       <form> 
        <textarea class='input-xlarge' rows='12' type='text'></textarea> 
        <P> 
         <input class='btn btn-primary' type='submit' value='Send' /> 
       </form>" 
+0

Bạn sẽ cần đăng một người viết hoặc kẻ lừa đảo để mọi người có thể khắc phục sự cố này. Nhưng trong thời gian chờ đợi, bạn có biết [ui-bootstrap] (http://angular-ui.github.com/bootstrap) không? Nó cung cấp các triển khai AngularJS thuần túy của các thư viện jQuery Bootstrap của Twitter. –

+0

cảm ơn đề xuất của bạn! tôi sẽ nhìn vào nó, có nghĩa là trong khi tôi cũng sẽ cố gắng để đăng một plunker sớm. Cảm ơn! = D – user1166085

+3

Tôi cũng không hiểu tại sao câu hỏi này lại bị bỏ phiếu. – Vivek

Trả lời

6

Hiện nay có ít kẻo 2 dự án có chỉ thị popover Bootstrap cho AngularJS viết đã:

Sự khác biệt là http://angular-ui.github.com/bootstrap/ có nguồn gốc Chỉ thị AngularJS, do đó bạn không cần bất kỳ phụ thuộc JavaScript bên thứ 3 nào.

Cả hai dự án đều được lưu trữ trên GitHub để bạn có thể xem các triển khai và học hỏi từ chúng, quyết định thay đổi hoặc chỉ sử dụng một trong các dự án.

+0

nó sẽ can thiệp vào twitter bootstrap? – user1166085

+0

cả hai dự án giới thiệu cửa sổ bật lên với các phiên bản cũ hơn của góc cạnh. khi bạn kiểm tra mã góc hiện đại như 1.0.6 hoặc 1.1.4, nó sẽ ngừng hoạt động. Popover và tooltip là vô ích trừ khi họ thêm một phần tùy chọn mẫu. – Richard

+0

@Richard Tôi không chắc chắn ý của bạn là gì "ngừng hoạt động" vì ít nhất chỉ thị từ http://angular-ui.github.com/bootstrap/ đang làm việc tốt với AngularJS mới nhất: http://plnkr.co/edit/FECkoAJgSbBVFdvzk6mx? p = xem trước –

11

Tôi không hiểu tại sao câu hỏi này bị bỏ phiếu. Đó là một ví dụ tốt về cách hiểu nguyên tắc phạm vi trong góc. Một phạm vi cơ bản được gắn vào một phần tử DOM. Tất cả các bộ điều khiển, lặp lại, vv sẽ chỉ hoạt động trong phần tử DOM này (phạm vi). Khi Boostrap tạo một cửa sổ bật lên, nó tạo ra một phần tử DOM mới và gắn nó vào phần thân, vì vậy bây giờ nó nằm ngoài phạm vi (nó không còn trong phần tử nữa). Đó là một tính năng chính để hiểu về Angular.

May mắn thay, Bootstrap có giải pháp. Popover có tùy chọn container cho phép bạn gắn thêm cửa sổ bật lên vào phần tử cụ thể thay vì phần thân. Đặt bộ chọn jQuery của phần tử DOM có bộ điều khiển góc. http://twitter.github.io/bootstrap/javascript.html#popovers (xem Tùy chọn)

Các vấn đề liên quan