この質問はすべて正規表現に関するものだと確信しています。
ここにある JQM ルータープラグインを使用しています。正規表現を使用してページを照合し、イベント ハンドラーをバインドします。ドキュメントには次のように記載されています。
典型的な間違いは、$ 演算子を忘れることです。#product と #productList などの 2 つのページがある場合、架空のルート「#product」は両方のページに一致し、予期しない動作につながります。
Ok。#item ページと #items ページがあるので、#item の前に $ を付けました。しかし、今ではイベント ハンドラーをまったくバインドしません。ドルを使用しない場合、アイテムのバインディングが両方のページに適用されます。これが実際の実装です。
var router = new $.mobile.Router([
{"#items": {events:"i", handler: items.controller.init}},
{"#items(?:[?/](.*))?": {events:"bs", handler: items.controller.onPageBeforeShow}},
{"#item": {events:"i", handler: item.controller.init}},
{"#item(?:[?/](.*))?": {events:"bs", handler: item.controller.onPageBeforeShow}},
]);