PDA

View Full Version : فراخوانی توابع از پرونده‌ای محلی (local file)



mhjbarnamenevis
یک شنبه 14 دی 1399, 13:26 عصر
بسمه تعالی.
سلام.
خلاصه کنم:
سایت بورس این امکان رو داده که مقداری برنامه‌نویسی جاوا تو یکی از صفحاتش انجام بدیم. طبق تصویر زیر:
https://uupload.ir/files/wlh_2021-01-03_13-51-25.png (https://uupload.ir/)
همون طور که می‌بینیم سمت راست یک سری دکمه هست که هر کدام را بزنیم یک خانه (سمت چپ) باز می‌کند که در آن می‌شود کد نوشت.
۹۰ درصد کدهایی که در این خانه‌ها نوشته می‌شود مشترک و حجیم است!
حالا کاری که من می‌خواهم انجام دهم این است که می‌خواهم در یک پرونده‌ی محلی (روی رایانه خودم) کدها و توابع خودم را بنویسم و فقط اینجا آنها را فراخوانی کنم.
امکانش هست؟

plague
یک شنبه 14 دی 1399, 14:43 عصر
اگه میخای کد رو روی کامپیوتر خودت توی یک فایل بنویسی و اینجا فراخوانی کنی شاید بتنی اگه فایل رو یه جوری ضمیمه کنی توی این صفحه که

https://stackoverflow.com/questions/5282228

mhjbarnamenevis
یک شنبه 14 دی 1399, 15:55 عصر
اگه میخای کد رو روی کامپیوتر خودت توی یک فایل بنویسی و اینجا فراخوانی کنی شاید بتنی اگه فایل رو یه جوری ضمیمه کنی توی این صفحه که

https://stackoverflow.com/questions/5282228
سلام. ممنون. دست شما واقعا درد نکند. خدا عوضتان دهد.
ولی دقیق متوجه نشدم. (من جاواسکریپت زیاد بلد نیستم.)
----------------------------
پاسخ منتخب:
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = 'script.js';
document.head.appendChild(script);
اگر می‌شود بفرمایید این document را چگونه معرفی/تعریف/آدرس‌دهی کنم؟
و اینکه اینجا نوشته script.js. در صورتی که من یک آدرس در رایانه‌ام دارم... c:\users\desktop\script.js
این را چه کارش کنم؟
---------------------------

plague
یک شنبه 14 دی 1399, 23:21 عصر
بجای script.js باید آدرس و نام فایل js خودتون رو بدین
از توی کنسول مروگر میتونی کد های js اجرا بکنید
میتونید تو یوتوب سچ کنید ویدئو هاش رو ببینید این یک نمونه

https://www.youtube.com/watch?v=JzZFccCEgGA


به طور خلاصه یک تگ script باید به صفحه اضافه کنی که سورسش اون فایل مد نظر شما باشه

mhjbarnamenevis
سه شنبه 30 دی 1399, 21:00 عصر
بجای script.js باید آدرس و نام فایل js خودتون رو بدین
از توی کنسول مروگر میتونی کد های js اجرا بکنید
میتونید تو یوتوب سچ کنید ویدئو هاش رو ببینید این یک نمونه

https://www.youtube.com/watch?v=JzZFccCEgGA


به طور خلاصه یک تگ script باید به صفحه اضافه کنی که سورسش اون فایل مد نظر شما باشه
سلام
ممنون
من چندین بار تلاش کردم ولی متاسفانه به نتیجه نرسیدم.
احتمالا آن روش کار می‌کرده ولی امکانش را کلا برداشته‌اند.
روش:


filePath = 'file:///C:/Users/xxxxxxxx/Desktop/nnnnnn/mmmmmm.js';
script = document.createElement('script');
// script.type = 'text/javascript';
script.src =filePath;
document.head.appendChild(script);
کنسول کروم می‌گوید:
(متن خطایی که می‌گیرد: )

VM665:13 Not allowed to load local resource: file:///C:/Users/xxxxxxxxxxx/Desktop/nnnnnn/mmmmmm.js
-----------------------------------------------
در اینترنت به دنبال راه حل گشتم گفته بودند کروم را با این اتربیوت اجرا کنید (https://stackoverflow.com/questions/34901523/file-url-not-allowed-to-load-local-resource-in-the-internet-browser/35014520):

--disable-web-security --allow-file-access-from-files --allow-file-access
که این راه حل برای من جواب نداد. (این را هم فکر کنم مسدود کرده‌اند.)
-----------------------------------------------
یکی دیگر هم گفته بود که سرور محلی اجرا کنید. (با کروم یا پایتون (https://stackoverflow.com/questions/39007243/cannot-open-local-file-chrome-not-allowed-to-load-local-resource#:~:text=Google%20Chrome%20does%20not%20al low,resources%20because%20of%20the%20security.&text=Other%20workarounds%20are%20possible%2C%20suc h,file%3A%2F%2F)%20using%20Chrome).) که این کار مناسب من نیست.
-----------------------------------------------
برخی هم می‌گفتند فایرفاکس انگار اجازه‌ی انجام این کار را می‌دهد. (که هم این راه حل مناسب من نیست و هم این که یکی دیگر می‌گفت اخیرا این امکان از فایرفاکس نیز برداشته شده است!)



پی‌نوشت: یک روز عمرم هدر شد. :اشتباه:

mhjbarnamenevis
پنج شنبه 02 بهمن 1399, 14:17 عصر
سلام خدمت دوستان.
راهکاری که به آن رسیدم:
به جای
filePath = 'file:///C:/Users/xxxxxxxx/Desktop/nnnnnn/mmmmmm.js';
بنویسم:
filePath = 'http://127.0.0.1:8887/JavaScriptFunctionsFile.js';
و از افزونه‌یWeb Server for Chrome (https://chrome.google.com/webstore/detail/web-server-for-chrome/ofhbbkphhbklhfoeikjpcbhemlocgigb)در کروم استفاده کنم.
یا علی.



--------------------------------------------
پی‌نوشت:
البته زیاد جالب نیست. چون انگار هر بار باید آن را اجرا کنم. اگر چیزی بود که پس‌زمینه و دائم بود بهتر بود.
این انگار هست ولی کار نمی‌کند: https://chrome.google.com/webstore/detail/open-local-file-links/pffnpnkjfbkdecgjajdjailghedhgnfg
اگر کسی چیز دیگری می‌شناسد بفرماید. سپاس. یا علی.