نمایش قسمتی از یک سایت

باسلام و عرض خسته نباشید

چطوری میشه در برنامه اندرویدی در webview فقط بخشی از یک سایت را نشان داد؟(کل سایت را نه مثلا در اولین صفحه سایت فقط یک بخش مخصوص را نمایش دهیم)

ممنون می شوم پاسخم را بدهید

پاسخ ها

sokanacademy forum
کاربر سکان آکادمی 8 سال پیش

سلام،هر صفحه ی اچ تی ام ال که ساخته می شود از مدل DOM پیروی می کند،(document object model) یعنی نمودار درختی برای اجزای اچ تی ام ال کشید،جاوا اسکریپت این امکان را دارد،که یکی از این ابجکت ها را سلکت کند وبخواند. مثلا تگ div که ای دی ان btn می باشد. با جاوا اسکریپ و جی کویری یک متدهای دارند می شوند هر بخش سایت اچ تی ام ال ،را انتخاب کرد. که برای انتخاب بخشی از وب سایت در وب ویو باید به ان جاوا اسکریپت تزریق کنی:یعنی از این سورس استفاده کنی:

final WebView webview = (WebView)findViewById(R.id.browser); webview.getSettings().setJavaScriptEnabled(true); webview.setWebViewClient(new WebViewClient() { @Override public void onPageFinished(WebView view, String url) { webview.loadUrl("javascript:(function() { " + "document.getElementsByTagName('header')[0].style.display="none"; " + "})()"); } }); webview.loadUrl("http://code.google.com/android");

که کافی است یو ار ال و المنت صفحه را عوض کنی

sokanacademy forum
کاربر سکان آکادمی 8 سال پیش
باسلامی مجدد و تشکر از پاسخگویی عالیتان من می خواهمعرض و ارتفاع پایین را از یک سایت نشان دهد,دقیقا باید در کجای کد بنویسمش: 470*285,175 عرض = 470 ارتفاع = 285,175 ممنون می شوم پاسخم را بدهید
sokanacademy forum
کاربر سکان آکادمی 8 سال پیش
سلام،باید بری نزدیک ترین المنت را برای ان انتخا کنی،ببین مثلا برای صفحه اچ تی ام ال این ناحیه یک تگ div داره، داخل این تک نوشته ای دی فلان،شماا می توانی با متد getElementId ان را انتخاب کنی،داخل کد بالا گت المنت تگ استفاده شده بود. به اجزای تشکیل دهند ه صفحه وب توجه کن،در مودد مدل DOM و سلکتور ها در جاوا اسکریپت بخوان: اینه که 100 px پایین راه بده،این روش چندان جالب نیست،باید با همین روش بالا کار کنی. افزونه webdeveloper نصب کن ،برو قسمت دیسپلی استایل سی اس اس ،می بینی هر قسمت سایت براساس همین مدل دام،خط کش بندی ترو تمیزی دارد.براساس اون می توانی ای دی و کلاس های اون ناحیه را بدست بیاری
sokanacademy forum
کاربر سکان آکادمی 8 سال پیش
باسلام من کاملا گیج شدم. من می خواهم div پایین را از یک سایت نمایش بدم باید این div رو کجا بنویسم؟ div 470 * 285,175 ممنون می شوم پاسخم را بدهید
sokanacademy forum
کاربر سکان آکادمی 8 سال پیش

سلام،در صفحه ی وب،id با علامت # نشان داده می شه،هر صفحه وب مثل یک جسم مرکب از اجزای خیلی زیادی تشکیل شده،برای هریک از این اجزا،ای دی منحصر به فرد است،دو تا جز با ای دی یکسان نمی توان در صفحه اچ تی ام ال پیدا کرد.وقتی من می گم

 

این یعنی ای دی این قسمت،این بخش مای ابجکت است،من گفتم داخل کد بالا به جای متد گت المنت تگ از گت المنت ای دی استفاده کن ،نگفتم؟!چرا چون ای دی منحصر بفرد است. یعنی مثلا اگه ای دی مورد نظر من مای ابجکت باشه باید داخل متد این ای دی را بنویسم. مثلا من صفحه گوگل باز کردم می خواهم فوتر ش را انتخاب کنم،از همان ابزار وب دولپر استفاده کردم،ببین عکس را: http://s6.picofile.com/file/8241769992/skacdmyqapa1.png ببین پایین صفحه فوتر کادر سرخ دورش است،بعد مدل دام هم داره داخل این ابزار بهت نشان می دهد: اگه خوب نگاه کنی،ای دی این بخش footcnt است،یعنی این ای دی این قسمت را پوشش می دهد. پس تو یک تکه از صفحه را با دانستن ای دی و کمک جاوا اسکریپت می تونی سلکت کنی.این ابزار هم حتما نصب کن اچار فرانسه وب دولپر ها است. document.getElementById("id") یعنی این سورس:

final WebView webview = (WebView)findViewById(R.id.browser); webview.getSettings().setJavaScriptEnabled(true); webview.setWebViewClient(new WebViewClient() { @Override public void onPageFinished(WebView view, String url) { webview.loadUrl("javascript:(function() { " + "document.getElementById("footcnt").style.display="none"; " + "})()"); } }); webview.loadUrl("http://google.com");
sokanacademy forum
کاربر سکان آکادمی 8 سال پیش

باسلام و عرض خسته نباشید به شما و همه همکارانتان من همانطوری که گفتید کدها را نوشتم ولی تمام صفحه را نمایش می دهد نه فقط آن بخشی که من می خواهم. این آدرس صفحه است :http://eform.irancell.ir/portal/home/?88440/%D8%A8%D8%B3%D8%AA%D9%87-%D9%87%D8%A7 و من می خواهم فقط در بخش (مدیریت هزینه با بسته های ترکیبی ایرانسل) فقط عکس ها را نمایش دهد. این کدهای من است:

final WebView webview = (WebView) findViewById(R.id.webView4); webview.getSettings().setJavaScriptEnabled(true); webview.setWebViewClient(new WebViewClient() { @Override public void onPageFinished(WebView view, String url) { webview.loadUrl("javascript:(function() { " + "document.getElementById('WebPart_94e54b83_f6e0_471f_88a5_10399ead1e0b').style.display='none'; " + "})()"); } }); webview.loadUrl("http://eform.irancell.ir/portal/home/?88440/%D8%A8%D8%B3%D8%AA%D9%87-%D9%87%D8%A7");

من خیلی در این باره کار کردم ولی به نتیجه ای نرسیدم .لطفا راهنمایی ام کنید

online-support-icon