PDA

View Full Version : کار گروهی: java script snap shot



محمدامین شریفی
سه شنبه 05 آذر 1387, 23:04 عصر
ما در حقیقت میخواهیم با داشتن یک وب سرویس متن هایی که کاربران معنی آنرا نمیدانند(مانند زبان انگلیسی یا اشعار پارسی)در یک container آنرا نشان دهیم،میدونم این کار خیلی سنگین است ولی راحت! و پرکاربرد است.اگر مرحله به مرحله پیش برویم خیلی خوب است.مرحله اول یک فایل XML در کنار HTML داشته باشیم و از روی آن مقادیر را بخوانیم(البته نظر من هست،شما هر کاری صلاح میدونید انجام دهید).
در ضمن من وبگاه پارسی را هم دیدم که با 2 بار کلیک کردن روی متن های آن معنی آنرا در لغت نامه دهخدا میشد ببنیم(البته الان تو ذهنم نیست،و میدونم تو IE و FF هم اجرا میشد.اگر کسی کد اینرا هم میداند به پروژه اضافه کند).شاید این کمک خوبی باشد (http://www.google.com/search?q=web+service+javascript&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a).
گرچه این برای مرحله دوم خوب میباشد (http://www.w3schools.com/xml/default.asp)
در ضمن اگر زبان sever side خودتان هم بگویید بد نیست

پروژه اول (http://barnamenevis.org/forum/attachment.php?attachmentid=25816&d=1227617876)

rashid1368
پنج شنبه 07 آذر 1387, 09:57 صبح
با سلام
من هنوز هم کاملا متوجه نشدم که شما چی می خواین انجام بدبد
لطفا کمی بیشتر توضیح بدین

محمدامین شریفی
جمعه 08 آذر 1387, 04:30 صبح
دوستان من نمیخواهم کار بخصوصی انجام دهم.میخواهم کار گروهی با هم کنیم.شما هر ایده یا کاری را که بلدید حتی در اندازه بسیار کوچک آنرا در قالب پروژه بعدی انجام دهید.به نظر من در اولین مرحله بد نیست که یک فایل xml در کنار فایل html قرار دهیم و با جاوا اسکریپت آنرا بخوانیم،فایلی شبیه این:

<word>
<meaning>
</meaning>
<translate>
</translate>
....
....
....
</word>
<word>
<meaning>
</meaning>
<translate>
</translate>
....
....
....
</word>

zoghal
شنبه 09 آذر 1387, 00:09 صبح
یک مثال از نوع کار میتونید به صورت واضح و کامل بزنید؟

محمدامین شریفی
شنبه 09 آذر 1387, 06:38 صبح
یک مثال از نوع کار میتونید به صورت واضح و کامل بزنید؟
در ابتدا باید از همه سرورانم آقایان kassit (http://barnamenevis.org/forum/member.php?u=56730), raravaice (http://barnamenevis.org/forum/member.php?u=37086) جان تشکر کنم که در این نظر خواهی شرکت کردند.
workflow->ابتدا کلماتی را که میخواهیم ترجمه آنها را داشته باشیم درون xml مینویسیم.
سپس این کلمات را در متنمان(html page)به صورت hyperlink یا span در می آوریم.

سپس در رویداد onmouseover آنها روش خواندن محتوای node مربوطه را جهت نمایش در div مینویسیم.حالا هنگامی که کاربر روی آن کلمه مشخص شده رفت div ای زیر آن لغت برایش باز شده است که معنی آن لغت را برای او نمایش میدهد.
ولی شما هرگونه که دوست دارید به این پست جهت بدهید،هر ایده ای که دارید را مطرح کنید

----------------

zoghal
شنبه 09 آذر 1387, 10:00 صبح
خوب این روال اشتباه هست، فرض کنید همچین سیستمی ایجاد شود و کاربری در یک cms نیاز داشته باشد از این سیستم بهره بگیره

حال قرار باشید ما قسمتی رو اخصاص بدیم به کلماتی که میخواهیم به این روش ترجمه شود ، مقداری مشکل ساز میشه


پیشنهاد بنده به این صورت هست که می توانیم یک تگ رو برای این کار در نظر بگیریم، به عنوان مثال تگ <code>
حالا اسکریپتی باید تهیه شود که زمانی که موس بر روی کلمه ای که در این تگ قرار دارد به صورت ایجکس به سرویس دهنده ارسال و جواب رو به روشی که گفتید نمایش داده شود.

محمدامین شریفی
شنبه 09 آذر 1387, 13:00 عصر
دوستان هر ایده ای را که ارائه میدهید،لطفا آنرا پیاده سازی کنید.
در ضمن چون اینجا تالار html/javascript هست،نخواستم روش ajax ای را پیشنهاد کنم.
در این تالار بهتر است فرض کنیم که مخاطب ما یک وبلاگ نویس است نه یک cms کار.
این روشی را که شما گفتید از یک تگ مانند <code> استفاده کنیم، بسیار جالب است،اگر میتوانید آنرا پیاده سازی کنید،تا همه استفاده کنند

raravaice
یک شنبه 10 آذر 1387, 12:07 عصر
پیشنهاد میکنم از همان روش Ajax استفاده بشه، به این دلیل که انجام این کار کاملا از سمت کلاینت یه مقدار نا معقول هست!
جالب میشه اگر این برنامه با اسکریپتهای مختلف سمت سرور نوشته و کامل بشه و پیشنهاد دیگری که در این خصوص دارم اینکه هر کدام از دوستان که به اسکریپت خاصی تسلط دارن نسخه شماره 1 رو با کامنت گزاری کامل منتشر کنه و بقیه دوستان به نسبت سواد خودشون همون سورس رو تکمیل کنن.
پیشنهاد من : PHP و ASP.NET و jsp استفاده بشه به علت فراگیر بودن.
به زیبایی و سبک بودن Design کار هم حتما اهمیت بدید.


موفق باشید

محمدامین شریفی
یک شنبه 10 آذر 1387, 12:29 عصر
ولی به نظر من جالب تر اینست که از همان جاوا اسکریپت استفاده کنیم.
به نظر من اگر هم بخواهیم از server side استفاده کنیم،بهتر است از قابلیت web service استفاده کنیم تا ajax.
به هر حال این نظر شخصی بنده است.
بچه ها سنگ بزرگ نشونه نزدن هست،بهتر هست کم کم پروژه را کامل کنیم و خیلی هم ساده به قضیه نگاه کنیم.

محمدامین شریفی
یک شنبه 10 آذر 1387, 17:34 عصر
با سلام به همه دوستان.
در زیر برای شما پروژه دوم را گذاشتم.
قابلیت های پروژه:
1)یک محیط پویا برای برنامه های تحت کلاینت که میخواهند بدون استفاده از widget (http://barnamenevis.org/forum/showthread.php?t=130711) برای خود snap shot داشته باشند،مانند وبلاگ ها.
2)تشخیص خودکار تگ بکار رفته برای متن که در اینجا hyperlink است.
محیط اجرا:
IE base and netscape base
ایده بعدی شخصیم :
1)ساختن یک ویرایشگر-editor- برای متن های ورودی با زبان جاوا اسکریپت که بتواند متن را بگیرد و تک تک واژه ها را با my xml "word" nodeبسنجد،در صورت موجود بودن کلمه آنرا به تگ hyperlink تبدیل کند.
2)ساختن یک ویرایشگر-editor- برای واژه های ورودی با زبان جاوا اسکریپت که بتواند واژه هایی را که کاربر میخواهد در فایل xml اش باشد به صورت چند input بگیرد و خودکار وارد کند.
قابلیت تجاری کردن پروژه:
همانطور که میدانید وبگاه های غیر حرفه ای مانند persiantools و webgozar اقدام به ارائه برخی برنامه کم ارزش میکنند که اکثر آنها هم خودشان ننوشته اند مانند"وضعیت آنلاین بودن"که ساخته یاهو است ولی آنها به نام خودشان این کدها را معرفی میکنند! و ...
پس با این مثال ساده میبینید که چقدر برخی کاربران اینترنت ایران هوشمند هستند.
پس از کامل شدن نهایی(که در 5 یا 6 پروژه بعدیست)میتوانیم آنرا به اینگونه تجاری کنیم.
1) فایل های جاوا اسکریپت را encrypt میکنیم. (http://www.google.com/search?hl=en&safe=off&client=firefox-a&rls=org.mozilla:en-US:official&hs=fA8&sa=X&oi=spell&resnum=0&ct=result&cd=1&q=javascript+encrypt&spell=1)
2) از external javascript استفاده میکنیم. (http://www.javascriptkit.com/javatutors/external.shtml)
3)پس از کامل شدن ویرایشگرمان-editor- آدرس جاوا اسکریپت خارجی را که دارای یک function یک arument ای میباشد ، که خروجیش ورودی برنامه ماست را روانه بازار میکنیم.

--------------------

البته پروژه بعدی را شما باید مشارکت کنید.
در ضمن من تا آخر این ماه نیستم.

milade
یک شنبه 10 آذر 1387, 17:40 عصر
ببینید من که نفهمیدم
اما تا حدودی فکر کنم میخواید یه دیکشنری بسازید و برا بقیه سایتها قابل استفاده باشه.
درسته؟
(اگه اره بگید تا کمکی بکنم)

milade
یک شنبه 10 آذر 1387, 18:05 عصر
خوب شروع می کنم.
زبان برنامه نویسی:ajax,asp.net,js,sql
خوب کمربند رو ببندید که داریم میریم!:قهقهه:
خوب اول بانک:
یه بانک میسازیم که فقط شامل دو تا فیلد کلمه و ترجمه هست(براتون میسازم و تا فردا ظهر میزارم)
و برنامه نویسی که سعی می کنم در پستهای مجزا عرض کنم تک تک
حالا کسی برا بانک نظری نداره که چه ستونهایی داشته باشه و غیره؟

محمدامین شریفی
یک شنبه 10 آذر 1387, 18:10 عصر
خوب شروع می کنم.
زبان برنامه نویسی:ajax,asp.net,js,sql
خوب اول بانک:
یه بانک میسازیم که فقط شامل دو تا فیلد کلمه و ترجمه هست(براتون میسازم و تا فردا ظهر میزارم)
و برنامه نویسی که سعی می کنم در پستهای مجزا عرض کنم تک تک
حالا کسی برا بانک نظری نداره که چه ستونهایی داشته باشه و غیره؟
آره field هاش باید همون node های xml باشد(درون پروژه دوم قرار دارد)
البته node های xml اش رو خودت میتونی تغییر بدی ولی جوری کار بشه که تحت سرور و تحت کلاینت یکی باشد.
فقط بچه ها تا جایی که میتونید کم تر پست بزنید که اینجا مانند مرجع بشود
اگه توضیحات هم تو خود برنامه مانند comment بدی فکر کنم بهتر میشه

آقا میلاد خیلی چاکریم.

emad_67
یک شنبه 10 آذر 1387, 21:19 عصر
حالا کسی برا بانک نظری نداره که چه ستونهایی داشته باشه و غیره؟به نظرم نام فیلد های بانک رو مطابق همین تگ های xml ئی که آقا امین در نظر گرفتن، ایجاد کن.
یعنی نام فیلد ها رو بزار title, meaning, translate
اینجوری خیلی راحت میشه با dataset خروجی xml مورد نظر رو ایجاد کرد.

محمدامین شریفی
یک شنبه 10 آذر 1387, 21:50 عصر
به نظرم نام فیلد های بانک رو مطابق همین تگ های xml ئی که جناب bia2dadash2 (http://barnamenevis.org/forum/member.php?u=45828) در نظر گرفتن، ایجاد کن.
یعنی نام فیلد ها رو بزار title, meaning, translate
اینجوری خیلی راحت میشه با dataset خروجی xml مورد نظر رو ایجاد کرد.
سلام استاد عماد.
در ضمن برای خروجی گرفتن و کار کردن با webservice هم راحت تریم.

vahid4134
دوشنبه 11 آذر 1387, 07:55 صبح
شاید من اشتباه فهمیدم. یعنی داخل یک فایل xml دیکشنری هست؟
اگر آره که دیکشنری حداقل حجمش چقدر میشه؟

محمدامین شریفی
دوشنبه 11 آذر 1387, 10:03 صبح
شاید من اشتباه فهمیدم. یعنی داخل یک فایل xml دیکشنری هست؟
اگر آره که دیکشنری حداقل حجمش چقدر میشه؟
آقا وحید:قلب: ما در حقیقت در xml یک custom dictionary داریم که هر کاربر میتواند برای خودش ایجاد کند(اگر فایل ها را ببینید،بهتر متوجه میشوید).در چند پروژه بعد تصمیم میگیریم که چگونه این custom dictionary پر شود،یا کاربر تمام موارد"title, meaning, translate" پر میکند یا اینکه فقط title را وارد میکند و بقیه اش را برنامه پر میکند،اگر روش دوم را ترجیح بدهیم باید دنبال یک وب سرویس dictionary باشیم.حالا شما به عنوان یک php کار اگر بتوانید برنامه اش را به زبان php بنویسید و خروجی web service برای تعامل با دیگر برنامه ها داشته باشد،در کنار کار آقا میلاد جالب میشود.
دوستان دیگر هم اگر میتوانند بر روی پروژه جاوا اسکریپت و RIA کار کنند.
از RIA میتوان برای ساختن editor بهره برد.
من هم بعد از کنکور نسخه WF و silverlight اش را کامل میکنم(ماه دیگه)

milade
سه شنبه 12 آذر 1387, 19:37 عصر
سلام
ببخشید با تاخیر جواب دادم(سرم شلوغ بود ، اینترنت خراب)
در کل من بانک رو رد مب کنم چون اصلا مناسب نیست
در ثانی فکر کنم به فکر یه دیکشنری معمولی باشیم خیلی بهتره و راحت تر
مثلا یه متن رو بهش بدیم اون با استفاده از کلمات ترجمش کنه
نظر شما چیه

محمدامین شریفی
چهارشنبه 13 آذر 1387, 05:02 صبح
بانک هم بد نبود چون میشد توش داده های xml ذخیره کرد و با وب سرویس هم بهش ارتباط برقرار کرد.
آقا میلاد این کاری رو گفتی رو میتونی پیاده سازی کنی؟
یا پروژه قبلی را کامل ترش کن

raravaice
چهارشنبه 13 آذر 1387, 10:51 صبح
بحث رو از snap shot به سمت دیکشنری هدایت نکنید لطفا!

موفق باشید

milade
چهارشنبه 13 آذر 1387, 13:26 عصر
سورس رو که دیدم خیلی دنگ و فنگ میخواد برا کار شما مثلا:
نوشتن یه کلمه باید لینک مجزا بشه ، id داده بشه و ...
ایا کسی راه حل بهتری داره؟

vahid4134
چهارشنبه 13 آذر 1387, 18:22 عصر
من سورس رو ندیدم. اما اید هایی که از extjs گرفتم رو بهتون میگم
بهتره که دو نوع داشته باشید که کاربر تعیین کنه. یکی اینکه از xml بگیره یا از json حالا این xml یا json می تونه قبلا لود بشه یا اینکه با درخواست ajax گرفته بشه.
وب سرویس هم نمی خواد که. چون جاوااسکریپت هست. یه درخواست به سرور ارسال میشه سرور به صورت json جواب میده. روش خیلی میشه مانور داد. البته من این کار رو قبلا کردم البته با extjs . اگر می خوایید با extjs باشه می تونم کمکتون کنم. وگرنه می تونم ایده بدم

eAmin
پنج شنبه 14 آذر 1387, 09:21 صبح
سلام.

من تا حدودی مشکلاتش رو که توی مرورگرهای فایرفاکس و اپرا وجود داشت رو حل کردم، و تا این لحظه می شه گفت مشکلاتش کمتر شده...

یه چیز دیگه دوستان سعی کنید تا اونجا که می تونید، کدها رو copy و past نکنید و از اونجایی که این یه پروژه ی گروهی هست، جایز نیست که به اینصورت عمل کنیم.
در ضمن اگر ممکنه بیشتر روی تمیز نوشتن کدها وقت بزارید تا هر یک از افراد گروه نیم ساعت وقتش رو برای تحلیل کد نزاره، اگر در نوشتن کدها دقت کنید و کدها تمیز تولید کنید، سرعت کار بیشتر می شه و راحتتر می شه ادامه داد و یا افراد بیشتری رو به گروه جذب کرد.

captureEvents هم برای مرورگرهای قدیمی ns که غیر استاندارد هم هست بکار می ره، ولی طبق استاندارد w3c به جاش از EventListener ها استفاده کردم که مشکلی ندارند.


<!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>barnamenevis</title>

<style type="text/css">

body {
font: 12px/120% verdana,tahoma,sans-serif;
margin: 0;
padding: 0;
}

.content {
position: absolute;
background-color:White;
border:1px solid #000;
width:auto;
height:auto;
display: none;
padding: 5px;
}

</style>

<script type="text/javascript">

// Get elements id
var elem = Function("ids", "return document.getElementById(ids)");
var IE = (window.ActiveXObject);

var wd,x,xmlDoc;
var tempX = 0;
var tempY = 0;

if (window.ActiveXObject) { // code for IE
xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
} else if (document.implementation.createDocument) { // code for Firefox, Mozilla, Opera, etc.
xmlDoc = document.implementation.createDocument("","",null);
} else {
throw new Error("Browser does not support XML Document.");
}

xmlDoc.async=false;
xmlDoc.load("XMLFile.xml");

//////////////////////////////////////////

x = xmlDoc.getElementsByTagName("word");

// If NS -- that is, !IE -- then set up for mouse capture
if (!IE) document.addEventListener("mousemove", getMouseXY, false);

// Set-up to use getMouseXY function onMouseMove
document.onmousemove = getMouseXY;

// Main function to retrieve mouse x-y pos.s

function getMouseXY(e) {
// grab the x-y pos.s if browser is IE
if (IE) {
tempX = (event.clientX + 5) + document.body.scrollLeft;
tempY = (event.clientY + 20) + document.body.scrollTop;
} else { // grab the x-y pos.s if browser is NS
tempX = (e.pageX + 5);
tempY = (e.pageY + 20);
}

// catch possible negative values in NS4
if (tempX < 0){tempX = 0}
if (tempY < 0){tempY = 0}

// show the position values in the form named Show
// in the text fields named MouseX and MouseY
elem("content").style.left=tempX + "px";
elem("content").style.top=tempY + "px";

return true
}

function over() {
wd = elem("hyper").innerHTML;
for (var i=0;i<x.length;i++)
{
if(wd == x[i].getElementsByTagName("title")[0].childNodes[0].nodeValue) {
elem("translate").innerHTML = x[i].getElementsByTagName("translate")[0].childNodes[0].nodeValue;
elem("meaning").innerHTML = x[i].getElementsByTagName("meaning")[0].childNodes[0].nodeValue;
}
}
elem("content").style.display = "block";
}

function out() {
elem("content").style.display = "none";
}

</script>

</head>

<body>
<form id="frm" dir="ltr" action="mousePosition.htm" >
<span>hello to all of the members of</span>
<a href="#" id="hyper" onmouseover="over();" onmouseout="out();" >http</a>

<span id="content" class="content" >
<label style="color: #008000">&nbsp;meaning is :&nbsp;</label>
<label id="meaning"></label>
<br />
<label style="color: #0000FF">&nbsp;translate is :&nbsp;</label>
<label id="translate"></label>
</span>
</form>
</body>
</html>

محمدامین شریفی
جمعه 15 آذر 1387, 06:42 صبح
وب سرویس هم نمی خواد که. چون جاوااسکریپت هست. یه درخواست به سرور ارسال میشه سرور به صورت json جواب میده. روش خیلی میشه مانور داد. البته من این کار رو قبلا کردم البته با extjs . اگر می خوایید با extjs باشه می تونم کمکتون کنم. وگرنه می تونم ایده بدم
از آنجا که شما کلی تعریف این فناوری ها رو کردی،جالب میشه که تو پروژه هم وارد بشه.



بحث رو از snap shot به سمت دیکشنری هدایت نکنید لطفا!

جناب raravaice محتوای پروژه را گفتم که شبیه dictionary باشد.آیا شما برای محتوای پروژه نظر بهتری را دارید؟

محمدامین شریفی
یک شنبه 17 آذر 1387, 06:18 صبح
از این رو که silverlight یک فناوری جدید و پیشرفته است و اجزای آن از هم جدا میباشند(فایل گرافیکی و فایل اجرایی که همان جاوا اسکریپت است) و همچنین نحوه render شدن آن با flash که به صورت "تعبیه شده" است،متفاوت میباشد(به صورت createsilverlight() میباشد)
.و همچنین امکان استفاده از تمام قابلیت های js درون فایل اصلی آن(Page.xaml.js) را دارا میباشد.بر آن شدم که دست به یک اقدام جدید بزنم و بجای اینکه snapshot ما عنصر div را که درون عنصر span هست را نشان بدهد،آنرا به صورت شئی سیلورلایت درون عنصر span نشان دهد!!!!
به این دلیل که این فناوری جدید میباشد و من هم تجربه و دانش کافی در این باره نداشتم،این پروژه ناقص میباشد.
در صورت استفاده از این فناوری در پروژه باید نکات زیر را در نظر بگیریم:
مزیت ها:
1)امکانات گرافیکی بسیار بسیار بالا نسبت به css
2)استفاده از قابلیت های بالای این زبان نسبت به js(چون ترکیبی از js و موتور پردازشی xaml میباشد) و همچنین اگر اگر از دات نت هم بهره بگیریم بسیار بیشتر میشود(من بلد نیستم)
3)استفاده از پایگاه داده xml و استفاده راحت تر از web service البته این نکته را به یاد داشته باشید:
The data handling is not supported in Microsoft Silverlight 1.0 projects. (و این همان نسخه ایست که من از آن استفاده میکنم)
بدی ها:
1)حتما باید plugin سیلورلایت بر روی رایانه کاربر نصب باشد،که البته تقریبا هم حجم همان plugin فلش میباشد.
2)من اطلاعی ندارم!!!


------------------------------

مشکلات این پروژه به صورت زیر میباشد:
1)من نتوانستم که event handler ای برای trigger عناصر داخلی silverlight از برون silverlight پیدا کنم.
شاید با نوشتن اطلاعات JavaScript درون یک فایل متنی و خواندن silverlight از روی آن فایل متنی مشکل حل شود،اگر این روش جواب بدهد باید هر دفعه که mouse روی hyperlink میرود،سیلور لایت ابتدا باید نابود شود و دوباره ساخته شود،یا اینکه متدی برای referesh کردن سیلور لایت پیدا کنیم.
2)پروژه من به همان دلیل بالایی ایستا میباشد و نمیتواند با xml رابطه برقرار کند.
3)من نتوانستم که نوشته های فارسی (http://www.barnamenevis.org/forum/showthread.php?p=645467#post645467)را درون silverlight نشان دهم.ولی میدانم این امکان را دارد.

دوستان اگر درباره خود سیلورلایت و استفاده نکردن یا کردن از آن در این پروژه نظر دارند،در اینجا بحث کنند. (http://barnamenevis.org/forum/showthread.php?p=645468#post645468)
و اگر درباره تکمیل این پروژه نظر دارند،لطفا نظرات سازنده یشان را بگوییند.

محمدامین شریفی
جمعه 06 دی 1387, 19:34 عصر
پیشنهاد میکنم از همان روش Ajax استفاده بشه، به این دلیل که انجام این کار کاملا از سمت کلاینت یه مقدار نا معقول هست!
جالب میشه اگر این برنامه با اسکریپتهای مختلف سمت سرور نوشته و کامل بشه و پیشنهاد دیگری که در این خصوص دارم اینکه هر کدام از دوستان که به اسکریپت خاصی تسلط دارن نسخه شماره 1 رو با کامنت گزاری کامل منتشر کنه و بقیه دوستان به نسبت سواد خودشون همون سورس رو تکمیل کنن.
پیشنهاد من : PHP و ASP.NET و jsp استفاده بشه به علت فراگیر بودن.
به زیبایی و سبک بودن Design کار هم حتما اهمیت بدید.
موفق باشید

خوب شروع می کنم.
زبان برنامه نویسی:ajax,asp.net,js,sql
خوب کمربند رو ببندید که داریم میریم!:قهقهه:
خوب اول بانک:
یه بانک میسازیم که فقط شامل دو تا فیلد کلمه و ترجمه هست(براتون میسازم و تا فردا ظهر میزارم)
و برنامه نویسی که سعی می کنم در پستهای مجزا عرض کنم تک تک
حالا کسی برا بانک نظری نداره که چه ستونهایی داشته باشه و غیره؟
دوستان فکر کنم این یک base خوب برای اینکار باشد.کسی از دوستان میداند چگونه میشود داده ها را درون clipboard ریخت،دوستان اگر روش asp.net یا js رو بلدند بگوییند.

من سورس رو ندیدم. اما اید هایی که از extjs گرفتم رو بهتون میگم
بهتره که دو نوع داشته باشید که کاربر تعیین کنه. یکی اینکه از xml بگیره یا از json حالا این xml یا json می تونه قبلا لود بشه یا اینکه با درخواست ajax گرفته بشه.
وب سرویس هم نمی خواد که. چون جاوااسکریپت هست. یه درخواست به سرور ارسال میشه سرور به صورت json جواب میده. روش خیلی میشه مانور داد. البته من این کار رو قبلا کردم البته با extjs . اگر می خوایید با extjs باشه می تونم کمکتون کنم. وگرنه می تونم ایده بدم
آقا وحید میتونی با این extj چیزی شبیه فایل اولیه کار گروهی بسازی؟

بچه ها از کار گروهی خسته شدید؟اگر پروژه بهتری را میشناسید بگویید تا کار گروهی بهتری داشته باشیم.

zoghal
جمعه 06 دی 1387, 19:41 عصر
کسی از دوستان میداند چگونه میشود داده ها را درون clipboard ریخت،دوستان اگر روش asp.net یا js رو بلدند بگوییند.

نمی دونم واسه چی میخوای اما تو فایرفاکس اجازه نمیده اسکریپت دسترسی به clipboard داشته باشه و باید یک سری تنظیمات انجام بدید.(جهت اطلاع)

محمدامین شریفی
یک شنبه 08 دی 1387, 15:45 عصر
نمی دونم واسه چی میخوای اما تو فایرفاکس اجازه نمیده اسکریپت دسترسی به clipboard داشته باشه و باید یک سری تنظیمات انجام بدید.(جهت اطلاع)
آره راست میگی توی FF نمیشه ولی توی IE با اجازه کاربر میشه.
اینم کد:


<a href="javascript:SiteInstance.copyToClipboard($('code-result').get('text'))">copy to clipboard</a>

میخواستم وقتی که داده XML تولید میشه و کاربر میخواهد آنرا ذخیره کند بتواند با کد جاوا اسکریپت آنرا ذخیره کند.

ممنون

RoostaYeBekr
شنبه 14 دی 1387, 19:11 عصر
سلام
:لبخند:
برنامه ای که فرستادم ، در راستای همون Translate شماست . خیلی سعی کردم که دیتابیس را هم بفرستم ، به خاطر محدودیت حجم نشد. خودتون یک دیتابیس با ویژگی های زیر ، درست کنید :

نام دیتابیس :My_Dictionary
کد زیر را می توانید کپی و پیست کنید تا جدول ساخته شود :


CREATE TABLE [Persian_English] (
[idr] [int] IDENTITY (1, 1) NOT NULL ,
[English] [nvarchar] (32) COLLATE Arabic_CI_AI NULL ,
[Persian] [nvarchar] (70) COLLATE Arabic_CI_AI NULL ,
CONSTRAINT [PK_Persian_English] PRIMARY KEY CLUSTERED
(
[idr]
) ON [PRIMARY]
) ON [PRIMARY]
GO



داده هایی را در دیتابیس وارد کنید که قرار است در برنامه ، Select اش کنید. برای داده هایی که وارد نکرده اید ، کادر خالی نشان داده می شود.

توجه : لینک دانلود دیتابیس در همین سایت است . از بخش پروژه های Open Source دانلودش کنید. البته در این بخش از Access استفاده شده . من در این برنامه تبدیل به SQL.Server اش کرده بودم و فقط از یک دیتابیس برای بالا رفتن سرعت استفاده کردم. این دیتابیسی که می گم یک دیکشنری با پنجاه و دو هزار و خورده ای کلمه است.

من البته تو نظرم بود که این دیتابیس را تبدیل به فایل XML کنم . کار راحتی است . خواستید بکنید. ولی بعد فکر کردم که برای این همه رکورد ممکن است که XML نتواند کارایی داشته باشد. بالاخره در دیتابیس ، می توان ایندکسی ، چیزی زد.

که قیافش این شکلیه :
http://www.sleezo.com/imgs/2009/jan/03/ynnc.png

محمدامین شریفی
سه شنبه 17 دی 1387, 14:41 عصر
خیلی ممنون رفیق گلم.
دوست من،این یک کار گروهی هست نه من!
در ضمن هدف هم snapshot میباشد،dictionary به نظر من بهترین کاربردش میباشد(البته نظر من شخصی هست).
بازم از پست خوبت تشکر میکنم.و حتما برنامه را نگاه میکنم.
نمیشود با همان برنامه قبلی ادغام بشه؟

RoostaYeBekr
پنج شنبه 19 دی 1387, 16:13 عصر
خیلی ممنون رفیق گلم.
دوست من،این یک کار گروهی هست نه من!
در ضمن هدف هم snapshot میباشد،dictionary به نظر من بهترین کاربردش میباشد(البته نظر من شخصی هست).
بازم از پست خوبت تشکر میکنم.و حتما برنامه را نگاه میکنم.
نمیشود با همان برنامه قبلی ادغام بشه؟
با سلام
:خجالت:
البته من هم به تنهایی این برنامه ای که فرستادم را ننوشتم . اگر دقت کنید ، اون تکه کد حرکت جدول ، همان برنامه ی mouseposition شماست . یک قسمتی رو خودم اضافه کردم.

چرا نشه ادغامش کرد ؟ اگر فکر می کنید بهتر از این هم می شه نوشت که قطعا همینطور است ، خوشحال می شم ادامه پیدا کنه .

محمدامین شریفی
سه شنبه 01 دی 1388, 21:16 عصر
سلام.

من تا حدودی مشکلاتش رو که توی مرورگرهای فایرفاکس و اپرا وجود داشت رو حل کردم، و تا این لحظه می شه گفت مشکلاتش کمتر شده...

یه چیز دیگه دوستان سعی کنید تا اونجا که می تونید، کدها رو copy و past نکنید و از اونجایی که این یه پروژه ی گروهی هست، جایز نیست که به اینصورت عمل کنیم.
در ضمن اگر ممکنه بیشتر روی تمیز نوشتن کدها وقت بزارید تا هر یک از افراد گروه نیم ساعت وقتش رو برای تحلیل کد نزاره، اگر در نوشتن کدها دقت کنید و کدها تمیز تولید کنید، سرعت کار بیشتر می شه و راحتتر می شه ادامه داد و یا افراد بیشتری رو به گروه جذب کرد.

captureEvents هم برای مرورگرهای قدیمی ns که غیر استاندارد هم هست بکار می ره، ولی طبق استاندارد w3c به جاش از EventListener ها استفاده کردم که مشکلی ندارند.




function getMouseXY(e) {
// grab the x-y pos.s if browser is IE
if (IE) {
tempX = (event.clientX + 5) + document.body.scrollLeft;
tempY = (event.clientY + 20) + document.body.scrollTop;
} else { // grab the x-y pos.s if browser is NS
tempX = (e.pageX + 5);
tempY = (e.pageY + 20);
}

// catch possible negative values in NS4
if (tempX < 0){tempX = 0}
if (tempY < 0){tempY = 0}

// show the position values in the form named Show
// in the text fields named MouseX and MouseY
elem("content").style.left=tempX + "px";
elem("content").style.top=tempY + "px";

return true
}


خیلی جالب است، IE 8 با کد قبلیش جور دیگری (http://www.highdots.com/forums/javascript/ie6-ie7-vs-ie8-give-276733.html) رفتار میکند(document.body)!.


if (IE) {
if (document.documentElement) {
tempX = (event.clientX + 5) + document.body.scrollLeft;
tempY = (event.clientY + 20) + document.body.scrollTop;
}
else tempX = (event.clientX + 5) + document.documentElement.scrollLeft;
tempY = (event.clientY + 20) + document.documentElement.scrollTop;در اینجا آخرین (http://barnamenevis.org/showpost.php?p=828498&postcount=19)

موفق باشید