2011-10-18 10 views
1

これはそんなにうんざりな質問ですが、幅広い開発者が作成した何百ものモジュールを管理するイントラネットポータルでは、まだjQuery 1.2.6が稼働しています。私はアップグレードしたいと思いますが、これは悪夢になるだろうとすでに言えるでしょう。バージョン1.2.6から1.6までの間に互換性の問題の根源が見つかりません。jQuery 1.2.6 - > 1.6:可能性?

誰もが何時でもいいですか、それとも私はそれを切り替えて、モジュールの故障時にエラーを修正し、開発者に警告し始めますか?

編集:古いバージョンから新しいバージョンに移行しようとする2つのバージョンのjQueryを含めるとどうでしょうか?多分$と$$などを使って影響を与えるでしょうか?このコメントを読んで、私がサポートしていないコードがたくさんあり、ポータル自体をサポートし、開発者に実行中のjQueryのバージョンを伝えるだけなので、すべてのことを忘れてしまいたいです。

+0

1.3-> 1.5という大きな問題がありました。これは.live()構文が注目され、何が関数に渡され、どのような順序で渡されますか。私は古いアプリをサンドボックス化し、1.5で新しいコードを宣伝してしまいました(これを避けるために、より定期的な更新を行っています)。 –

+0

これは良い質問であり、あなたのアップグレードのための非常に良いイニシアチブですが、決定的な回答を提供することは難しいでしょう。依存関係のあるjQueryプラグインを使用している場合は、これらのプラグインもアップグレードする必要があります。これは実際には1.2と1.6の間の大きな差です。私がこれをやった最後の時間には、いくつかの機能が壊れていることを深夜呼びかけました:-)幸いです。 –

+0

私はあなたにリストを与えることはできませんが、私は最近、最小の問題で1.3から1.6にアップグレードしました。私はその価値を試してアップグレードするだけで、どれくらい壊れているかを見て、あなたはいつもそれを逆転させることができると思います。すべてのパブリックAPIはそのまま残っているはずですが、私に問題をもたらしたのは、わずかなリファクタリングが必要な拡張機能/プラグインでした。 – wazz3r

答えて

3

まず、アップグレードしたいのはなぜですか?

新しいフィーチャーにアクセスしたいと思うためです。古いコードはそれらを使用しないので、今から新しいバージョンを使うのはなぜですか?

パフォーマンスを向上させますか?改善のメリットがあることがわかっているコードはありますか?

一旦あなたが心に留めてしまったら、ある夜遅く(または理想的にはあなたのテストサーバー上で行いますが、あなたが質問を持っていないことを意味します)、何が壊れているかを見てください。唯一の問題は、attrを使用してpropを使用することになると思われます。以前の動作であるattrを使用している古いスクリプトにはいくつか問題がありました。

+0

これに加えて、1.3のシズルエンジンにスワップすることによっていくつかのセレクタにも問題があります。使用しているサードパーティのプラグインを更新または置き換え、jquery UIを更新する必要があります。 1.2から1.6の間で多くのパフォーマンスの変更があったため(そしてまもなく1.7になる)、セレクタの一部を再評価する必要があるかもしれません。 –

+0

理想的な状況は、領域ごとに更新できることですすぐにアプリケーション全体を再実行する必要はありません。 –

+1

もちろん、私たちはテストサーバーを持っていますが、まだ30人以上の開発者がタイムライン付きプロジェクトに取り組んでいますので、jqueryを簡単に切り替えることはできません。私は明らかに追加の機能とパフォーマンスの向上に興味があります。一度に両方のバージョンを含めることなく、ポータルには個々の開発者ではなくjqueryが含まれているので、今から1.6を使用する方法はありません。 – Brad