2017-02-02 18 views
0

私は画像を選択したいのですが、領域をクリックすると、前の領域は "クリック解除"する必要があります。一度に1つの領域のみを選択してください

$(document).ready(function() { 
    $(document).mousemove(function(event){ 
     $("#coor").text(event.pageX + ", " + event.pageY); 
    }); 

    $('.map').maphilight({ 
     fillColor: '008800' 
    }); 

    $('.mapping').click(function(e) { 
     $('.mapping').not(this).attr('checked', false); 
     e.preventDefault(); 
     var data = $(this).mouseout().data('maphilight') || {}; 
     data.alwaysOn = !data.alwaysOn; 
     $(this).data('maphilight', data).trigger('alwaysOn.maphilight'); 
    }); 
}); 
<div id="links"> 
    <img src="img/hiveplattegrond.png" width="726" height="714" alt="Plattegrond Hive" id="afbeeldingachtergrond" usemap="#hivemap" class="map" s> 
    <map name="hivemap"> 
     <area shape="rect" coords="116,7,190,137" alt="Multimediaruimte" value="Lokaal_Multimedia_01" class="mapping" id="Lokaal_Multimedia_01"> 
     <area shape="rect" coords="187,7,267,73" alt="A105F" value="Lokaal_Studeren_01" class="mapping"> 
     <area shape="rect" coords="187,74, 267,137" alt="A105E" value="Lokaal_Studeren_03" class="mapping"> 
     <area shape="rect" coords="268,7,347,73" alt="lokaalzondernaam" value="Lokaal_Studeren_02" class="mapping"> 
     <area shape="rect" coords="268,74, 347, 137" alt="A105G" value="Lokaal_Studeren_04" class="mapping"> 
     <area shape="rect" coords="572, 445, 650, 523" alt="brainstormruimte" value="Lokaal_Brainstorm_01" class="mapping"> 
     <area shape="rect" coords="311,610,403,705" alt="groepsruimte1" value="Lokaal_Studeren_05" class="mapping"> 
     <area shape="rect" coords="404,610,495,705" alt="groepsruimte2" value="Lokaal_Studeren_06" class="mapping"> 
    </map> 
</div> 
+0

をあなたは 'unclicked'何を意味するかを説明してください?なぜ以前のすべての変更をすべての領域で元に戻すことができず、通常のものを現在のものに戻すことができないのですか? – Justinas

+0

ええ、私はエリアの値を取得する必要がありますが、一度に1つだけです。 –

答えて

0

だけの要素からcheckedプロパティを削除します。

$('.mappings').click(function (e) { 
     $('.mapping').not(this).removeAttr('checked').prop('checked', false); 
     e.preventDefault(); 
     [...] 
}); 
+0

同じ結果、私はまだ複数の領域を選択することができます。 –

0
$('.mapping').data('maphilight', { alwaysOn: false }).trigger('alwaysOn.maphilight'); 
$(this).data('maphilight', {alwaysOn: true}).trigger('alwaysOn.maphilight'); 
関連する問題