2010-07-08 37 views
9

Câu hỏi này khá phổ biến, nhưng tôi tự hỏi sự khác biệt của Javascript là gì trong Mobile Safari và Safari dành cho Mac.Sự khác biệt Javascript giữa Mobile Safari và Safari trên máy Mac?

Tôi đã có ấn tượng rằng từ góc độ Javascript, chúng giống nhau, chỉ có một số khác biệt về CSS/rendering. Nhưng tôi đang gặp phải một số lỗi Javascript trong Mobile Safari không tồn tại trong Safari thông thường trên Mac.

Về cơ bản một số cuộc gọi đến một số plugin jQuery đang trả về giá trị không xác định (theo trình gỡ lỗi nhà phát triển trong Mobile Safari).

Trang web mà tôi đang gặp phải những vấn đề này có giao diện người dùng rất tệ hại với các lỗi xác thực, JS tệ hại và có lượng CSS khổng lồ được đính kèm. Tôi không có nghi ngờ rằng vấn đề này nằm ở đâu đó trong mã này, và tôi chưa bao giờ gặp vấn đề như thế này trước đây.

Tôi chỉ gặp sự cố khi giải quyết vấn đề, vì vậy mọi thông tin chi tiết/liên kết về sự khác biệt chung trong công cụ Javascript sẽ được đánh giá cao.

+0

Như được rút ra cho biết, các vấn đề sẽ được gây ra bởi sự khác biệt DOM/BOM hơn sự khác biệt trong chính động cơ JS. Nhưng hãy có những thứ đó — hữu ích để biết, đặc biệt khi Mobile Safari không có sẵn miễn phí cho tất cả mọi người để kiểm tra. – bobince

Trả lời

2

Bản thân Javascript, ngôn ngữ chính, không khác biệt. Có một vài khác biệt đáng kể trong DOM xuất hiện không có giấy tờ, nhưng chủ yếu là tất cả đều giống nhau. Ở đây bạn có thể thấy một số khác biệt trong số events mà bạn có thể xử lý.

Sự khác biệt DOM mà tôi nhận thấy phải làm với các yếu tố đo. Ví dụ: getClientRects, ít nhất là cho một Lựa chọn hoặc Phạm vi, không có sẵn. Có lẽ có những thứ khác.

0

Trước khi tôi thêm hai xu của mình về sự khác biệt trong Safari tùy thuộc vào môi trường hoặc xây dựng: danh sách môi trường có thể cho Safari lớn hơn iPod, iPhone, iMac.

Tôi cũng đang xử lý: Safari cho Windows (máy tính để bàn) và Mobile Safari trong Trình mô phỏng iOS trên iMac.

ứng dụng

My jQueryMobile + PhoneGap hoạt động độc đáo trong Safari cho Windows (desktop) và Safari trên iMac, nhưng nó có những vấn đề sau đây trong Safari trên iOS Simulator trên iMac Snow Leopard với XCode 3.x:

  1. Google Analytics bị "từ chối danh sách trắng" trong trình mô phỏng iOS.
  2. Ứng dụng của tôi bị treo sớm trong quá trình cài đặt của người dùng thông qua một vấn đề khác

Đó vấn đề khác có thể là bất kỳ:

  1. thẻ đặt sau yếu tố có thể không được nạp đúng
  2. cuộc gọi đến localDb có thể không đến qua các sự kiện
  3. jQuery (tranginit, nhấp, v.v.) có thể không theo mặc định theo cách tương tự
Các vấn đề liên quan