• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Biblioteka paper.js dręczący bug XMLHttpRequest cannot load

Object Storage Arubacloud
+1 głos
151 wizyt
pytanie zadane 16 lipca 2016 w JavaScript przez String Gaduła (4,520 p.)

Cześć, ostatnio bawię się biblioteką paper.js.
Kiedy piszę kod inline w jednym pliku index.html wszystko sprawnie działa

<!DOCTYPE html>
<html lang="pl">
<head>
	<meta charset="utf-8">
	<title> paperjs</title>
	<link href="style.css" rel="stylesheet">
	<script  type="text/javascript" src="paper-full.min.js"></script>
   <script type="text/paperscript" canvas="myCanvas">
        var path;
	
        function onMouseDown(event) {
            path = new Path(
			{
                segments: [event.point],
                strokeColor: 'black',
				strokeWidth: 1,
            });
        }

        function onMouseDrag(event) {
            path.add(event.point);
        }

        function onMouseUp(event) {
            path.simplify(2);
        }
    </script>	
	
</head>

<body>
	<canvas id="myCanvas" resize> You need better browser :D </canvas>

</body>

</html>

 

Jednakże kiedy napiszę coś takiego:

<!DOCTYPE html>
<html lang="pl">
<head>
	<meta charset="utf-8">
	<title> paperjs</title>
	<link href="style.css" rel="stylesheet">
	<script  type="text/javascript" src="paper-full.min.js"></script>
   <script type="text/paperscript"   src="myscript.js" canvas="myCanvas">
</script>
	
</head>

<body>
	<canvas id="myCanvas" resize> You need better browser :D </canvas>

</body>

</html>

a w pliku myscript.js:

var path;
	
        function onMouseDown(event) {
            path = new Path(
			{
                segments: [event.point],
                strokeColor: 'black',
				strokeWidth: 1,
            });
        }

        function onMouseDrag(event) {
            path.add(event.point);
        }

        function onMouseUp(event) {
            path.simplify(2);
        }

czyli ten sam skrypt.
To chrome wywala błędy:

Na githubie napisano, żeby dodać atrybut async, taki też więc dodałem i w wyniku tego zniknęło tylko to pierwsze ostrzeżenie na żółtym tle, a dwa następne pozostały.
Co najlepsze w mozilli firefox wszystko działa sprawnie ;o
w IE nic nie działa i dodatku nawet błędu nie wywala :D

Męczę się już tym szuukam i nie mogę znaleźć rozwiązania, a bardzo mi na tym zależy, gdyż nie lubię mieć scriptów zapisanych w headzie. Dużo lepiej trzymać skrypty w osobnym pliku.
Pomoże ktoś?

Tutaj link: http://paperjs.org/tutorials/getting-started/working-with-paper-js/

2 odpowiedzi

+1 głos
odpowiedź 17 lipca 2016 przez Comandeer Guru (601,550 p.)

Ajax nie działa po file i to, że działa w lisku jest IMO błędem bezpieczeństwa.

Co więcej: w Chrome każdy plik otwarty przez file jest uważany za plik otwarty z innego źródła, więc od razu dołączają problemy związane z cross origin.

Rozwiązanie jest proste: instalacja prostego serwera typu XAMPP.

komentarz 17 lipca 2016 przez String Gaduła (4,520 p.)
Czyli wlasciwie nie powinno dzialac zapisując skrypt inline tak ? Ok tak czulem ze potrzebny mi bedzie serwer zeby wszystko fajnie dzialalo :) dzieki
0 głosów
odpowiedź 17 lipca 2016 przez String Gaduła (4,520 p.)
Ponawiam pytanie. Chciałbym chociaż dowiedzieć się co oznacza ten błąd. Bo to dosyć ciekawa sytuacja, że pisząc skrypt inline w pliku html wszystko działa, a kiedy chcę go dołączyć z innego pliku wtedy chrome wywala taki błąd.
Tak myślałem nad tym chwile i może to po prostu jest jakieś zabezpieczenie czy coś? Może skrypt z innego pliku zadziała, gdy całość umieszczę dopiero na serwerze? eh no nie mam pojęcia.

Podobne pytania

+1 głos
1 odpowiedź 269 wizyt
pytanie zadane 17 lipca 2021 w JavaScript przez sempiordlem Nowicjusz (210 p.)
0 głosów
0 odpowiedzi 74 wizyt
pytanie zadane 4 lutego 2023 w JavaScript przez TOWaD Mądrala (6,000 p.)
+2 głosów
1 odpowiedź 535 wizyt

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...