function changeFocus(divId) { var pos = getElementPos(divId); //要定位的对象这里是个Div window.scroll(pos.x,pos.y); } function getElementPos(elementId) { var ua = navigator.userAgent.toLowerCase(); var isOpera = (ua.indexOf('opera') != -1); var isIE = (ua.indexOf('msie') != -1 && !isOpera); // not opera spoof var el = document.getElementById(elementId); if (el.parentNode === null || el.style.display == 'none') { return false; } var parent = null; var pos = []; var box; if (el.getBoundingClientRect) //IE { box = el.getBoundingClientRect(); var scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop); var scrollLeft = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft); return { x: box.left + scrollLeft, y: box.top + scrollTop }; } else if (document.getBoxObjectFor) // gecko { box = document.getBoxObjectFor(el); var borderLeft = (el.style.borderLeftWidth) ? parseInt(el.style.borderLeftWidth) : 0; var borderTop = (el.style.borderTopWidth) ? parseInt(el.style.borderTopWidth) : 0; pos = [box.x - borderLeft, box.y - borderTop]; } else // safari & opera { pos = [el.offsetLeft, el.offsetTop]; parent = el.offsetParent; if (parent != el) { while (parent) { pos[0] += parent.offsetLeft; pos[1] += parent.offsetTop; parent = parent.offsetParent; } } if (ua.indexOf('opera') != -1 || (ua.indexOf('safari') != -1 && el.style.position == 'absolute')) { pos[0] -= document.body.offsetLeft; pos[1] -= document.body.offsetTop; } } if (el.parentNode) { parent = el.parentNode; } else { parent = null; } while (parent && parent.tagName != 'BODY' && parent.tagName != 'HTML') { // account for any scrolled ancestors pos[0] -= parent.scrollLeft; pos[1] -= parent.scrollTop; if (parent.parentNode) { parent = parent.parentNode; } else { parent = null; } } return { x: pos[0], y: pos[1] }; }
<span οnclick="changeFocus('anchorn1')">如何在线购买号码?</span>
<H4><A id="anchorn1" class=anchor name=anchorn1>如何在线购买号码?</A></H4> <DIV style="overflow:auto;" class=paragraph> <OL> <LI>进入号卡商城,选择“号码”。 <LI>选择您满意的手机号码、套餐和可选包,点击下一步。 <LI>如您希望选择更多商品,可以将选中的商品加入购物车中一并支付。 <LI>点击“立即购买”或购物车中的“结算”按钮进入订单确认页面。 <LI>您需填写入网资料,并确认已阅读《购前须知》和《移动电话入网协议》后,点击“下一步”。 <LI>您需阅读发票描述信息,填写发票抬头。同时选择或填写收货信息,点击“下一步”。 <LI>根据页面提示,选择支付宝进行在线支付。 <LI>在支付成功页面,系统会向您展示购买的相关信息。 </LI></OL></DIV>