0

私はこのようなコードを持っています:

<a href="javascript://" onclick="$('#newMsgTxt').focus();">New message</a>
<div style="min-height: 1300px;"></div>
<textarea id="newMsgTxt"></textarea>
<div style="min-height: 500px;"></div>

ここに問題があります。リンクをクリックした後、さまざまなブラウザでページが別の位置にスクロールします。

textareaクリック後の画面上の位置の例:

クローム: 中央
FF:
オペラ:

すべてのブラウザを Chrome のように動作させるにはどうすればよいですか?

4

5 に答える 5

1
$('a').click(function(e){
    e.preventDefault();
    var o = $('#newMsgTxt').focus().offset().top, $w = $(window);
    $w.scrollTop(o - ($w.height() / 2));
});

http://jsfiddle.net/2BHRw/

于 2013-02-08T12:27:08.980 に答える
0

こんにちは以下のコードで試してください......私の命名は良くありません...だから、あなたの考えに従って置き換えてください。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <script src="Scripts/jquery-1.7.1.js" type="text/javascript"></script>
   <script>

       function test() {
           var o = $('#newMsgTxt').focus().offset().top, $w = $(window);
                $w.scrollTop(o - ($w.height() / 2));
       }
   </script>
</head>
<body>
<a  onclick="test();">New message</a>
<div style="min-height: 1300px;vertical-align:top;"></div>
<textarea id="newMsgTxt" ></textarea>
<div style="min-height: 500px;"></div>
</body>
</html>
于 2013-02-08T12:52:58.890 に答える
0

これを試して。

onclick="$('#newMsgTxt').focus().val($('#newMsgTxt').val());
于 2013-02-08T12:24:59.500 に答える
0

HTML :

<a href="" id="newMessage">New message</a>

Jクエリ:

$(document).ready(function() {
    $('#newMessage').click(function(e) {
        e.preventDefault();
        $('#newMsgTxt').focus();
    });    
});

http://jsfiddle.net/soyuka/jxZw2/

于 2013-02-08T12:25:16.287 に答える
0

これは、スクロール位置が異なるためです。

console.log(window.scrollY)onclickingを使用してテストできlink ます。したがって、これを中央に配置するには、これをコーディングする必要があります。

そして、コードは次のようになります

$(function() {
    $('a').click(function(e){
        $('#newMsgTxt').focus();
        var offsetTop = offset().top; 
        $(window).scrollTop(offsetTop - ($(window).height() / 2));
    });
});

そしてあなたのhtmlは次のようになります:

<a href="javascript://">New message</a>
<div style="min-height: 1300px;"></div>
<textarea id="newMsgTxt">gfg</textarea>
<div style="min-height: 500px;"></div>
于 2013-02-08T12:39:54.440 に答える