HTML මූලද්‍රව්‍යයක සත්‍ය පළල සහ උස ලබා ගන්නේ කෙසේද?


923

<div>බ්‍රව්සරයේ සංදර්ශකය (දර්ශන පුවරුව) කේන්ද්‍රගත කිරීමට මා සතුව ඇතැයි සිතමු . එසේ කිරීමට, මට <div>මූලද්රව්යයේ පළල සහ උස ගණනය කළ යුතුය .

මා භාවිතා කළ යුත්තේ කුමක්ද? කරුණාකර බ්‍රව්සර් අනුකූලතාව පිළිබඳ තොරතුරු ඇතුළත් කරන්න.


9
ඕනෑම ක්‍රමයක් හරහා මූලද්‍රව්‍යයක උස ලබා ගැනීම සැමවිටම කාර්ය සාධන බලපෑමක් ඇති කරන බව මතක තබා ගන්න, එමඟින් බ්‍රව්සරය පිටුවේ ඇති සියලුම මූලද්‍රව්‍යයන්ගේ පිහිටීම නැවත ගණනය කරයි (reflow). එමනිසා, එය ඕනෑවට වඩා කිරීමෙන් වළකින්න. ප්‍රත්‍යාවර්තනයක් ඇති කරන්නේ කුමන ආකාරයේ දේවල් සඳහාද යන්න මෙම ලැයිස්තුවෙන් පරීක්ෂා කරන්න .
මාර්සෙලෝ ලාසරෝනි

Answers:


1336

ඔබ .offsetWidthසහ .offsetHeightගුණාංග භාවිතා කළ යුතුය . ඒවා මූලද්‍රව්‍යයට අයත් බව සලකන්න .style.

var width = document.getElementById('foo').offsetWidth;

.getBoundingClientRect()CSS පරිණාමනයන් සිදු කිරීමෙන් පසු ශ්‍රිතය මානයන් සහ මූලද්‍රව්‍යයේ පිහිටීම පාවෙන ලක්ෂ්‍ය සංඛ්‍යා ලෙස ලබා දෙයි.

> console.log(document.getElementById('id').getBoundingClientRect())
DOMRect {
    bottom: 177,
    height: 54.7,
    left: 278.5,​
    right: 909.5,
    top: 122.3,
    width: 631,
    x: 278.5,
    y: 122.3,
}

181
පරෙස්සම් වන්න! ඔබ මෑතකදී මූලද්‍රව්‍යයට යම් යම් DOM වෙනස් කිරීම් සිදු කර ඇත්නම් offsetHeight / offsetWidth 0 ආපසු ලබා දිය හැකිය. ඔබ මූලද්‍රව්‍යය වෙනස් කළ පසු ඔබට මෙම කේතය setTimeout ඇමතුමකින් ඇමතිය යුතුය.
ඩෑන් ෆැබුලිච්

38
ගැන ලියකියවිලි .offsetWidthහා .offsetHeight: developer.mozilla.org/en/Determining_the_dimensions_of_elements
Denilson SA Maia

31
එය 0 ආපසු ලබා දෙන්නේ කුමන තත්වයන් යටතේද?
චීටා

47
@JDandChips: offsetWidthමූලද්‍රව්‍යය නම් 0 වනු ඇත display:none, නමුත් ගණනය widthකළ විට මෙම අවස්ථාවේදී ධනාත්මක අගයක් තිබිය හැකිය. visibility:hiddenබලපාන්නේ නැත offsetWidth.
මිස්ටර් වයිට්

22
Up සුපුස්ටාර් දෙකටම විවිධ අර්ථයන් ඇත. offsetWidthඅන්තර්ගතය, පෑඩින් කිරීම සහ මායිම් ඇතුළුව “සම්පූර්ණ” කොටුව නැවත ලබා දෙයි; අතර clientWidthප්රතිලාභ අන්තර්ගතය කොටුව පමණක් ප්රමාණය (එම මූලද්රව්යය ඕනෑම ශූන්ය නොවන පුරවන සහ / හෝ දේශ සීමා කර විට එය කුඩා වටිනාකමක් ඇත එසේ). (මෝඩ් සංස්කරණය සඳහා පැහැදිලි කර ඇත)
එඩර්න් පැස්කුවල්

207

බලන්න Element.getBoundingClientRect().

මෙම ක්රමය නිසා අඩංගු වස්තුවක් ආපසු width, heightසහ ෙවනත් ඇතැම් ප්රයෝජනවත් වටිනාකම්:

{
    width: 960,
    height: 71,
    top: 603,
    bottom: 674,
    left: 360,
    right: 1320
}

උදාහරණයක් වශයෙන්:

var element = document.getElementById('foo');
var positionInfo = element.getBoundingClientRect();
var height = positionInfo.height;
var width = positionInfo.width;

මම මේ බව ප්රශ්න නැති බවයි .offsetWidthහා .offsetHeightඔවුන් සමහර විට නැවත කොහෙද 0(දී සාකච්ඡා ලෙස මෙහි අදහස් )

තවත් වෙනසක් වන්නේ getBoundingClientRect()භාගික පික්සල ආපසු හැක, එහිදී .offsetWidthහා .offsetHeightළඟම ඇති පූර්ණ සංඛ්යාමය කිරීමට අවට ඇත.

IE8 සටහන : IE8 සහ ඊට පහළින් getBoundingClientRectඋස සහ පළල ලබා නොදේ . *

ඔබ නම් කළ යුතුය , 8 යනු සහාය භාවිතා .offsetWidthහා .offsetHeight:

var height = element.offsetHeight;
var width = element.offsetWidth;

මෙම ක්‍රමය මඟින් ආපසු ලබා දුන් වස්තුව ඇත්ත වශයෙන්ම සාමාන්‍ය වස්තුවක් නොවන බව සඳහන් කිරීම වටී . එහි ගුණාංග ගණන් කළ නොහැකි ය (එබැවින්, උදාහරණයක් ලෙස, Object.keysපිටත සිට ක්‍රියා නොකරයි.)

මේ පිළිබඳ වැඩි විස්තර මෙතැනින්: ClientRect / DomRect සරල වස්තුවක් බවට පරිවර්තනය කරන්නේ කෙසේද?

යොමුව:


10
getboundingClientRect () කෙනෙකු CSS හරහා පරිමාණ ව මූලද්රව්ය සැබෑ, පළල හා උස ආපසු offsetHeightහා offsetWidthනෑ.
ලූක්

67

සටහන : මෙම පිළිතුර 2008 දී ලියා ඇත. එකල බොහෝ දෙනා සඳහා හොඳම හරස් බ්‍රව්සර විසඳුම වූයේ jQuery භාවිතා කිරීමයි. මම පරම්පරාව සඳහා පිළිතුර මෙහි තබන අතර, ඔබ jQuery භාවිතා කරන්නේ නම්, මෙය කිරීමට හොඳ ක්‍රමයකි. ඔබ වෙනත් රාමුවක් හෝ පිරිසිදු ජාවාස්ක්‍රිප්ට් භාවිතා කරන්නේ නම් පිළිගත් පිළිතුර බොහෝ විට යා යුතු මාර්ගයයි.

JQuery 1.2.6 වන විට ඔබ හරය භාවිතා කළ හැකි CSS කාර්යයන් , heightසහ width(හෝ outerHeightසහ outerWidth, සුදුසු පරිදි).

var height = $("#myDiv").height();
var width = $("#myDiv").width();

var docHeight = $(document).height();
var docWidth = $(document).width();

46

එය ඕනෑම කෙනෙකුට ප්‍රයෝජනවත් වේ නම්, මම පෙළ කොටුවක්, බොත්තමක් සහ div සියල්ලම එකම css සමඟ තබමි:

width:200px;
height:20px;
border:solid 1px #000;
padding:2px;

<input id="t" type="text" />
<input id="b" type="button" />
<div   id="d"></div>

මම එය ක්‍රෝම්, ෆයර්ෆොක්ස් සහ එජ් එජ් වලින් අත්හදා බැලුවෙමි, මම jquery සමඟ සහ නැතිව උත්සාහ කළෙමි box-sizing:border-box. සැමවිටම සමඟ<!DOCTYPE html>

ප්රතිඵල:

                                                               Firefox       Chrome        IE-Edge    
                                                              with   w/o    with   w/o    with   w/o     box-sizing

$("#t").width()                                               194    200    194    200    194    200
$("#b").width()                                               194    194    194    194    194    194
$("#d").width()                                               194    200    194    200    194    200

$("#t").outerWidth()                                          200    206    200    206    200    206
$("#b").outerWidth()                                          200    200    200    200    200    200
$("#d").outerWidth()                                          200    206    200    206    200    206

$("#t").innerWidth()                                          198    204    198    204    198    204
$("#b").innerWidth()                                          198    198    198    198    198    198
$("#d").innerWidth()                                          198    204    198    204    198    204

$("#t").css('width')                                          200px  200px  200px  200px  200px  200px
$("#b").css('width')                                          200px  200px  200px  200px  200px  200px
$("#d").css('width')                                          200px  200px  200px  200px  200px  200px

$("#t").css('border-left-width')                              1px    1px    1px    1px    1px    1px
$("#b").css('border-left-width')                              1px    1px    1px    1px    1px    1px
$("#d").css('border-left-width')                              1px    1px    1px    1px    1px    1px

$("#t").css('padding-left')                                   2px    2px    2px    2px    2px    2px
$("#b").css('padding-left')                                   2px    2px    2px    2px    2px    2px
$("#d").css('padding-left')                                   2px    2px    2px    2px    2px    2px

document.getElementById("t").getBoundingClientRect().width    200    206    200    206    200    206
document.getElementById("b").getBoundingClientRect().width    200    200    200    200    200    200
document.getElementById("d").getBoundingClientRect().width    200    206    200    206    200    206

document.getElementById("t").offsetWidth                      200    206    200    206    200    206
document.getElementById("b").offsetWidth                      200    200    200    200    200    200
document.getElementById("d").offsetWidth                      200    206    200    206    200    206

1
පැහැදිලිව කිවහොත් ... එම බ්‍රව්සර්වලින් එකිනෙකාට වඩා වෙනස් දෙයක් කරන්නේද? මට කිසිදු වෙනසක් සොයාගත නොහැක ... එසේම, මම අඩු ඡන්දය ප්‍රකාශ කර නැත (තවමත්), නමුත් මෙය සැබවින්ම ප්‍රශ්නයට සෘජුවම පිළිතුරු සපයන්නේ නැත , එසේ කිරීමට පහසුවෙන් සංස්කරණය කළ හැකි වුවද.
Zach Lysobey

1
ප්‍රශ්නයට පිළිතුරු සැපයීම අරමුණු කර නොතිබුණි - එයට දැනටමත් පිළිතුරු ලැබී ඇත. සමහර ප්‍රයෝජනවත් තොරතුරු සහ ඔව් සියලුම ප්‍රධාන නවතම අනුවාද බ්‍රව්සර් මෙම අගයන්ට එකඟ වේ - එය හොඳ දෙයකි.
ග්‍රැහැම්

3
හොඳයි ... ඔබේ අදහස් කරයි නම්, නෑ ඒ සඳහා පිළිතුරු දීමට, එසේ නම් මේ ඇත්තටම මෙහි (ක "පිළිතුර" ලෙස) අයිති නැත. මෙය කිසියම් බාහිර සම්පතකට (සමහර විට GitHub සාරාංශයක් හෝ බ්ලොග් සටහනක්) දමා මුල් ප්‍රශ්නය හෝ එක පිළිතුරකට අදහස් දැක්වීමකට සම්බන්ධ කිරීම ගැන මම සලකා බලමි.
Zach Lysobey

21
Ach ZachLysobey සෑම රීතියකටම ව්‍යතිරේක පවතී - මෙය දැකීමට සිසිල්, ප්‍රයෝජනවත් දෙයකි.
ඩෑන් නිසෙන්බෝම්

18

MDN ට අනුව : මූලද්‍රව්‍යවල මානයන් තීරණය කිරීම

offsetWidthසහ offsetHeight"දෘශ්‍යමාන අන්තර්ගතයේ පළල, අනුචලන තීරු (ඇත්නම්), පෑඩින් කිරීම සහ මායිම ඇතුළුව මූලද්‍රව්‍යයක් සතු මුළු ඉඩ ප්‍රමාණය ආපසු ලබා දෙන්න"

clientWidthසහ clientHeight"පැඩින් කිරීම ඇතුළුව මායිම, ආන්තිකයන් හෝ අනුචලන තීරු ඇතුළුව සත්‍ය ලෙස දර්ශනය වූ අන්තර්ගතයට කොපමණ ඉඩ ප්‍රමාණයක් ගත යුතුද" යන්න ආපසු එවන්න.

scrollWidthසහ scrollHeight"අන්තර්ගතයේ සත්‍ය ප්‍රමාණය කොපමණ දැයි නොතකා එය ආපසු ලබා දෙන්න"

එබැවින් එය මනින ලද අන්තර්ගතය වර්තමාන නැරඹිය හැකි ප්‍රදේශයෙන් පිටත පවතිනු ඇතැයි අපේක්ෂා කරන්නේද යන්න මත රඳා පවතී.


ස්තූතියි: මෙන්න එම javascripttutorial.net/javascript-dom/javascript-width-height
CrandellWS

5

ඔබට එය ගණනය කළ යුත්තේ IE7 සහ ඊට වැඩි අය සඳහා පමණි (ඔබේ අන්තර්ගතයට ස්ථාවර ප්‍රමාණයක් නොමැති නම් පමණි). CSS2 සඳහා සහය නොදක්වන පැරණි IE වලට අනවසරයෙන් ඇතුළුවීම සීමා කිරීමට HTML කොන්දේසි සහිත අදහස් භාවිතා කිරීමට මම යෝජනා කරමි. අනෙක් සියලුම බ්‍රව්සර් සඳහා මෙය භාවිතා කරන්න:

<style type="text/css">
    html,body {display:table; height:100%;width:100%;margin:0;padding:0;}
    body {display:table-cell; vertical-align:middle;}
    div {display:table; margin:0 auto; background:red;}
</style>
<body><div>test<br>test</div></body>

මෙය පරිපූර්ණ විසඳුමයි. එය <div>ඕනෑම ප්‍රමාණයක කේන්ද්‍රගත වන අතර එය එහි අන්තර්ගතයේ ප්‍රමාණයට හැකිලී යයි.


4

මූලද්‍රව්‍ය මෝස්තර වෙනස් කිරීම පහසුය, නමුත් අගය කියවීමට ටිකක් උපක්‍රමශීලී ය.

ඔබ ජාවාස්ක්‍රිප්ට් හි getComputedStyle බිල්ට් ඉන් කෝල් භාවිතා නොකරන්නේ නම්, ජාවාස්ක්‍රිප්ට් හට CSS (අභ්‍යන්තර / බාහිර) වෙතින් එන මූලද්‍රව්‍ය ශෛලීය දේපල (elem.style) කියවිය නොහැක.

getComputedStyle (මූලද්‍රව්‍යය [, ව්‍යාජ])

මූලද්‍රව්‍යය: සඳහා අගය කියවිය යුතු අංගය.
ව්‍යාජ: අවශ්‍ය නම් ව්‍යාජ මූලද්‍රව්‍යයක්, උදාහරණයක් ලෙස :: පෙර. හිස් නූලක් හෝ තර්කයක් නැත යන්නෙන් අදහස් කරන්නේ මූලද්‍රව්‍යයයි.

ප්‍රති result ලය වන්නේ elem.style වැනි ශෛලීය ගුණාංග සහිත වස්තුවකි, නමුත් දැන් සියලු css පන්ති වලට සාපේක්ෂව.

උදාහරණයක් ලෙස, මෙහි ශෛලිය ආන්තිකය නොපෙනේ:

<head>
  <style> body { color: red; margin: 5px } </style>
</head>
<body>

  <script>
    let computedStyle = getComputedStyle(document.body);

    // now we can read the margin and the color from it

    alert( computedStyle.marginTop ); // 5px
    alert( computedStyle.color ); // rgb(255, 0, 0)
  </script>

</body>

එබැවින් ඔබේ ජාවාස්ක්‍රිප්ට් කේතය වෙනස් කර එහි පළල / උස හෝ වෙනත් ගුණාංගයක් ලබා ගැනීමට ඔබ කැමති මූලද්‍රව්‍යයේ getComputedStyle ඇතුළත් කරන්න.

window.onload = function() {

    var test = document.getElementById("test");
    test.addEventListener("click", select);


    function select(e) {                                  
        var elementID = e.target.id;
        var element = document.getElementById(elementID);
        let computedStyle = getComputedStyle(element);
        var width = computedStyle.width;
        console.log(element);
        console.log(width);
    }

}

ගණනය කළ සහ විසඳූ අගයන්

CSS හි සංකල්ප දෙකක් තිබේ:

CSS කඳුරැල්ලේ ප්‍රති result ලයක් ලෙස ගණනය කරන ලද ශෛලීය අගයක් යනු සියලු CSS රීති සහ CSS උරුමය යෙදීමෙන් පසුව ඇති අගයයි. එය උස මෙන් පෙනේ: 1em හෝ අකුරු ප්‍රමාණය: 125%.

නිරාකරණය කරන ලද ශෛලීය අගයක් යනු මූලද්‍රව්‍යයට අවසාන වශයෙන් යොදන අගයයි. 1em හෝ 125% වැනි අගයන් සාපේක්ෂ වේ. බ්‍රව්සරය ගණනය කළ අගය ගෙන සියලු ඒකක ස්ථාවර හා නිරපේක්ෂ කරයි, උදාහරණයක් ලෙස: උස: 20px හෝ අකුරු ප්‍රමාණය: 16px. ජ්‍යාමිතික ගුණාංග සඳහා නිරාකරණය කළ අගයන්ට පළල: 50.5px වැනි පාවෙන ලක්ෂ්‍යයක් තිබිය හැකිය.

බොහෝ කලකට පෙර getComputedStyle නිර්මාණය කරන ලද්දේ ගණනය කළ අගයන් ලබා ගැනීම සඳහා වන නමුත් එය විසඳා ඇති අගයන් වඩා පහසු බව පෙනී ගිය අතර ප්‍රමිතිය වෙනස් විය.
එබැවින් වර්තමානයේ getComputedStyle ඇත්ත වශයෙන්ම දේපලෙහි නිරාකරණය කළ වටිනාකම ලබා දෙයි.

කරුණාකර සටහන් කර ගන්න:

getComputedStyle සඳහා සම්පූර්ණ දේපල නම අවශ්‍ය වේ

පැඩින් ලෙෆ්ට් හෝ උස හෝ පළල වැනි ඔබට අවශ්‍ය දේපළ සැමවිටම ඉල්ලා සිටිය යුතුය. එසේ නොමැතිනම් නිවැරදි ප්‍රති result ලය සහතික නොවේ.

උදාහරණයක් ලෙස, paddingLeft / paddingTop යන ගුණාංග තිබේ නම්, getComputedStyle (elem) සඳහා අප ලබා ගත යුත්තේ කුමක්ද .පෑඩින් කිරීම? කිසිවක් නැත, නැතහොත් දන්නා පෑඩින් වලින් “ජනනය කළ” වටිනාකමක් තිබේද? මෙහි සම්මත රීතියක් නොමැත.

වෙනත් නොගැලපීම් තිබේ. උදාහරණයක් ලෙස, සමහර බ්‍රව්සර් (ක්‍රෝම්) පහත ලේඛනයේ 10px පෙන්වන අතර සමහර ඒවා (ෆයර්ෆොක්ස්) - එසේ නොකරයි:

<style>
  body {
    margin: 30px;
    height: 900px;
  }
</style>
<script>
  let style = getComputedStyle(document.body);
  alert(style.margin); // empty string in Firefox
</script>

වැඩි විස්තර සඳහා https://javascript.info/styles-and-classes


2

element.offsetWidth සහ element.offsetHeight කළ යුත්තේ පෙර ලිපියේ යෝජනා කළ පරිදි ය.

කෙසේ වෙතත්, ඔබට අන්තර්ගතය කේන්ද්‍රගත කිරීමට අවශ්‍ය නම්, එසේ කිරීමට වඩා හොඳ ක්‍රමයක් තිබේ. ඔබ xhtml දැඩි DOCTYPE භාවිතා කරයි යැයි උපකල්පනය කරමු. ආන්තිකය සකසන්න: 0, ස්වයංක්‍රීය දේපල සහ අවශ්‍ය පළල px හි ශරීර ටැගයට. අන්තර්ගතය පිටුවට කේන්ද්‍රගත වේ.


1
මම හිතන්නේ ඔහුට එය සිරස් අතට කේන්ද්‍රගත කිරීමට අවශ්‍යයි, ඔබට නිශ්චිත නිර්ණායකයන් (උදා: දන්නා ප්‍රමාණයේ අන්තර්ගතයන්) සපුරාලිය නොහැකි නම් එය CSS සමඟ ඇති වන වේදනාවකි
ග්‍රෙග්

1

... කේන්ද්‍රය මත බෙදීමට CSS උදව් කරන බව පෙනේ ...

<style>
 .monitor {
 position:fixed;/* ... absolute possible if on :root */
 top:0;bottom:0;right:0;left:0;
 visibility:hidden;
 }
 .wrapper {
 width:200px;/* this is size range */
 height:100px;
 position:absolute;
 left:50%;top:50%;
 visibility:hidden;
 }

 .content {
 position:absolute;
 width: 100%;height:100%;
 left:-50%;top:-50%;
 visibility:visible;
 }

</style>

 <div class="monitor">
  <div class="wrapper">
   <div class="content">

 ... so you hav div 200px*100px on center ...

  </div>
 </div>
</div>

1

ඔබට මෙම කේතය භාවිතා කළ හැකිය:

var divID = document.getElementById("divid");

var h = divID.style.pixelHeight;

1
හ්ම්, ක්‍රෝම් සහ අයිඊ 9 හි වැඩ කරයි, ෆයර්ෆොක්ස් හි වැඩ කරන බවක් නොපෙනේ. එය ක්‍රියාත්මක වන්නේ සමහර ලේඛ වර්ග සඳහා පමණක්ද?
BrainSlugs83

1
pixelHeight දුරටත් භාවිතා නොකළ යුතු අන්තර්ජාල එක්ස්ප්ලෝරර් නව නිපැයුම් විය stackoverflow.com/q/17405066/2194590
HolgerJeromin

0

ෆ්ලෙක්ස්

නඩුවේ ඔබ ඔබේ ප්රදර්ශනය කිරීමට අවශ්ය බව <div>තිරය මධ්යස්ථානයක් උත්පතන පණිවුඩය යම් ආකාරයක - ඔබ ප්රමාණය කියවීමට අවශ්ය නැහැ <div>නමුත් ඔබට භාවිතා කළ හැකි අයින්


-2

ඔබට එය බ්‍රව්සරයේ දර්ශන වරායේ කේන්ද්‍රගත කිරීමට අවශ්‍ය නම්; ඔබට එය සාක්ෂාත් කරගත හැක්කේ CSS සමඟ පමණි

yourSelector {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
} 

-3

ඕෆ්සෙට්විත් 0 ලබා දෙන්නේ නම්, ඔබට මූලද්‍රව්‍යයේ ශෛලියේ පළල දේපල ලබා ගත හැකි අතර එය අංකයක් සෙවිය හැකිය. "100px" -> 100

/\d*/.exec(MyElement.style.width)


-3

නිශ්චිත ඩොම් මූලද්‍රව්‍යයේ උස තීරණය කරන WKWebView සඳහා කේතය මෙන්න (සම්පූර්ණ පිටුවට නිසි ලෙස ක්‍රියා නොකරයි)

let html = "<body><span id=\"spanEl\" style=\"font-family: '\(taskFont.fontName)'; font-size: \(taskFont.pointSize - 4.0)pt; color: rgb(\(red), \(blue), \(green))\">\(textValue)</span></body>"
webView.navigationDelegate = self
webView.loadHTMLString(taskHTML, baseURL: nil)

func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
    webView.evaluateJavaScript("document.getElementById(\"spanEl\").getBoundingClientRect().height;") { [weak self] (response, error) in
        if let nValue = response as? NSNumber {

        }
    }
}

පැහැදිලිව කිවහොත්, මෙය iOS swiftකේතය නේද? ජාවාස්ක්‍රිප්ට් නොවේ. මම downvote (ආ / මෙම ඇ සෑහෙන්න ප්රයෝජනවත් විය හැක) නමුත් මේ බව කරුණාකර මතක තබා witholding කරනවා නොවේ ප්රශ්නයට පිළිතුරු, සහ ඉඩ තවත් මත වඩා යෝග්ය වනු ඇත, iOS විශේෂිත, ප්රශ්නය. මේ වන විටත් කිසිවක් නොපවතී නම්, එකක් ඉල්ලීම සහ ස්වයං පිළිතුරු දීම ගැන සලකා බලන්න.
සැක් ලයිසෝබි
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.