1

私は、この中に、グリッドビュー内のすべてのliような他のいくつかの要素を持っています。divsinputsli

私はにいonmouseover="calcRoute();"ますli

PROBLEMdivs:要素の内側にカーソルを合わせ、要素のdivから親に移動するdivと、がcalcRoute();再び実行されることに気付きました。つまり、Googleマップを再度バインドすると、マップの再バインドによってちらつきが発生します。

TRIEDonmouseenterおよびonmouseleave、ただし、すべてのブラウザでサポートされるわけではありません

<li onmouseover="calcRoute(8.4572136,76.94017529999996);return false; ">
  <div class="li-inner">


   <input type="image" name="ctl00$ContentPlaceHolder1$FESearchListingControl1$dlPhotoView$ctl01$imgPhotoView" id="ctl00_ContentPlaceHolder1_FESearchListingControl1_dlPhotoView_ctl01_imgPhotoView" src="../UploadedImages/House2469-22-8-2012.jpg" style="height:142px;width:219px;border-width:0px;">
   <div class="title">

   <a id="ctl00_ContentPlaceHolder1_FESearchListingControl1_dlPhotoView_ctl01_lblPropName" href="javascript:__doPostBack('ctl00$ContentPlaceHolder1$FESearchListingControl1$dlPhotoView$ctl01$lblPropName','')">Halloween</a>
    <div class="star"></div>
    </div>
    <div class="address">
        <div class="left-location">


        <span id="ctl00_ContentPlaceHolder1_FESearchListingControl1_dlPhotoView_ctl01_lblDistrict">Trivandrum</span>

        </div>
        <div class="right-price"><span class="WebRupee">Rs</span>
            <span id="ctl00_ContentPlaceHolder1_FESearchListingControl1_dlPhotoView_ctl01_lblPrice">500.00</span>
        </div>    
    </div>
  </div>
</li>
4

1 に答える 1

1

li要素にIDを付加し、このIDをcalcRoute関数に渡すことができます。

onmouseover="calcRoute(8.4572136,76.94017529999996, this.id);

次に、この関数で、以前にホバーされたこのli要素にフラグを設定できます。

var hoveredItems = {}; // this is a global object

function calcRoute(x,y,id) {
 // put this control on top so that recurring operations will be prevented from being run.
 if(hoveredItems[id]) return;
 else hoveredItems[id] = true; 
 ..
}

多分これは役立ちます...

于 2012-10-08T08:03:19.953 に答える