BIÊN TẬP:
Tôi biết được rằng sử dụng giá trị khác _blank
, KHÔNG hoạt động trên trình duyệt di động để mở các cửa sổ / tab mới.
Ví dụ: nếu bạn cần mở một cửa sổ / tab mới:
Này hoạt động trên tất cả các trình duyệt, ngay cả các trình duyệt di động:
target="_blank"
.Này không hoạt động trên các trình duyệt di động, nhưng nó không làm việc trên các trình duyệt máy tính để bàn:
target="new"
.
-
Mặc dù tôi có cách này đang hoạt động, nhưng tôi không chắc liệu có cách nào tốt hơn để thực hiện nó hay không, hoặc liệu cách tôi làm có phải là cách duy nhất / đúng hay không.
Về cơ bản những gì tôi đang làm là thay thế tất cả các giá trị target="_new"
hoặc target="_blank"
thuộc tính thành target="nw"
, theo cách này chỉ một cửa sổ mới được mở và trong đó tất cả các cửa sổ mới khác sẽ mở để không làm người dùng choáng ngợp với nhiều cửa sổ.
Tôi cũng đang thêm thuộc tính " Mở trong cửa sổ mới " title=""
.
Vì vậy, giải pháp tôi đã tạo là giải pháp này:
$("a[target='_blank'], a[target='_new']").attr('target','nw').attr('title','Opens in a new window');
Lưu ý hai .attr();
phương pháp.
Đây có phải là cách chính xác để thêm hai thuộc tính vào một phần tử không?
Tôi đã thử .attr('target','nw','title','Opens in a new window')
nhưng nó không hoạt động.
Lý do tôi hỏi là vì nguyên tắc DYR (Không lặp lại bản thân), vì vậy nếu tôi có thể cải thiện mã mà tôi có, tuyệt vời, nếu không, thì nó là như thế.
Cảm ơn.
.attr('a,b','value')
không hoạt động. Tôi cũng đã ổn định .attr('a',1).attr('b',1)
. Là ít phụ thuộc vào cửa sổ mới có thể là cách tiếp cận khác, trong trường hợp của bạn, tuy nhiên, @ricardozea: P