Ответ 1
function tellMyName() {
alert(this.hash.substr(1));
}
$('a').click(tellMyName);
У меня есть следующие теги:
<a href="#tab1">Any tab1 Label</a>
<a href="#tab2">tab2 Label</a>
<a href="#tab3">Any tab3 Label</a>
<script>
function tellMyName()
{
alert(this.href);
}
</script>
Теперь я хочу привязать функцию tellMyName ко всем тегам a и получить tab1, если нажата любая вкладка Lab1, tab2, если tab2 Ярлык и т.д....
function tellMyName() {
alert(this.hash.substr(1));
}
$('a').click(tellMyName);
function tellMyName() {
var str = this.href.split("#")[1];
alert(str);
}
Не все время будет отображаться только хэш-часть. Иногда хост добавляется к href
. Разделив href на hash
(#) и получив вторую часть разделительной строки, вы получите то, что хотите.
Вы можете сделать что-то вроде этого
var fragment = $('a#my-link')[0].hash.substr(1);
function tellMyName() {
alert(this.hash.replace('#',''));
}
$('a').click(tellMyName);
<script>
function tellMyName()
{
var text = this.href;
text = text.replace("#","");
alert(text);
}
</script>
Попробуйте это -
<a href="#tab1">Any tab1 Label</a>
<a href="#tab2">tab2 Label</a>
<a href="#tab3">Any tab3 Label</a>
<script type="text/javascript">
$('a').click(function(){
alert(this.hash.split('#')[1]); //This will alert # part in clicked anchor tag
});
</script>
Вы можете использовать что-то вроде этого:
...
var activeTab = $(this).attr("href");
$(activeTab).fadeIn();
...
Это использование href= "# tab-id" для нахождения нужного элемента tab-id # и исчезновения.
function tellMyName() {
var str = this.prop("hash").substr(1)
alert(str);
}
this.prop("hash") will return the hash value i.e #tab1