私はsubstring(1)を使用して、href属性の最後の文字を取得しています。
私はjavascriptを話している。私の開発サイトでは、すべてがうまく機能し、href http://www.mysite.come/page/#BはBを返し、すべてがうまくいきます。
サイトのライブバージョンでは、同じhrefの同じsubstring(1)がttp://www.mysite.com/page/#Bを返します。最初の文字を削除し、残りを返します。
なぜそうなるのか分かりません。これと同じスクリプトを複数のサイトで問題なく使用しました。おそらく関連する唯一のことは、開発サイトが新しいバージョンのjquery(1.8.1)を実行しており、ライブが1.7.1にあることです。
代わりにsubstr(-1,1)を使用しましたが、すべて正常に機能しますが、同じ入力から2つの異なる結果が得られた理由を誰かが教えてくれるかどうか知りたいです。
ありがとう!
追加情報
CSS TricksのOrganicTabsスクリプト(http://css-tricks.com/organic-tabs/)をしばらく使用していますが、最近まで問題はありませんでした。私はそれを部分文字列の行まで追跡しました:
var curList = base.$el.find("a.current").attr("href").substring(1)
このスクリプトが対象としているリンクの1つの例は次のとおりです。
<a href="#B"></a>
代わりにsubstrを使用するようにスクリプトを変更しましたが、substringで一貫性のない結果が得られる理由がわかりません。