私はこの問題を抱えています:
jqueryでアニメーション化されたdivがいくつかあり、それらにリンクが必要です。リンクを通常の「html a href's」に入れました..
これを可能にする方法はありますか?ここ 2 日間インターネットを検索しており、ウェブデザインの先生にも尋ねましたが、役立つものは何も見つかりませんでした。
これは私が取り組んでいるサイトです:
http://designchitchat.be/bart/vuurdood-site/
前もって感謝します!
私が理解した限りでは。あなたはこのようにすることができます。
<div style="width:100px;height:100px">
<a href="http://somesite.com" style="display:inline-block;width:100%;height:100%"></a>
</div>
ターゲットが「a」要素かどうかをテストする必要があります
私はjsfiddleを作成しました。「リンク」ボックスに入れたリンクをテストできます
この JavaScript をテストすることもできます。「リンク」ボックスでのみ機能します。他の部分については複製する必要があります。
$(document).ready(function() {
$('#kogelclip').draggable();
$('#vulpen').draggable();
$('#bio').toggle(function() {
$(this).animate({
top: '+=390'
}, {
duration: 750,
easing: 'swing'
});
}, function() {
$(this).animate({
top: '-=390'
}, {
duration: 750,
easing: 'swing'
});
});
$('#discografie').toggle(function() {
$(this).animate({
left: '+=560'
}, {
duration: 750,
easing: 'swing'
});
}, function() {
$(this).animate({
left: '-=560'
}, {
duration: 750,
easing: 'swing'
});
});
$('#links').toggle(function(event) {
if (!$(event.target).is('a')) {
$(this).animate({
right: '+=560'
}, {
duration: 750,
easing: 'swing'
});
} else {
document.location.href = $(event.target).attr('href');
}
}, function(event) {
if (!$(event.target).is('a')) {
$(this).animate({
right: '-=560'
}, {
duration: 750,
easing: 'swing'
});
} else {
document.location.href = $(event.target).attr('href');
}
});
});
サーシャ、私は彼が望んでいたものを手に入れました。彼は、jquery のアニメーション効果により、クリック後にスライドする 'DISCOGRAFIE' および 'BIO' ボードに関するいくつかの情報を提供しました。彼はこれらのブロックにリンクを貼りたかったのだと思います。クリックした後、ハイパーリンクのクリックイベントを呼び出すのではなく、アニメーションがトリガーされます。
これは、必要なすべてのリンクの onHover 効果によって実現できます。onClick イベントがアニメーション ブロックで使用されているため。これを取得するには、jQuery の document.ready 内に以下のコードを追加します。
$("a").hover(function(){
var link=$(this).attr('href');
location.redirect(link);
});