Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
joc idem Half Life gratis

PC game stream catre Nvidia Shiel...

Pompa de apa HEPU ?!

Vreau o masina electrica de tocat...
 Cum ajunge remorca de tir inapoi ...

Alt "Utilizator nou" pe T...

ULBS INFORMATICA

Index preturi
 Boxa membrana tweeter infundata

Am nevoie de poze cu un curcubeu

Whisky for Mac

Xiaomi 14 Gpay
 Izolare zid exterior de scandura

Dezinstalare drivere W11 23H3

Recomandare masina de spalat fiab...

BSOD din cauza Intel Audio DSP dr...
 

iframe - eliberare resurse

- - - - -
  • Please log in to reply
9 replies to this topic

#1
mellbo

mellbo

    Member

  • Grup: Members
  • Posts: 885
  • Înscris: 07.06.2010
Sincer nu stiam ce nume sa dau la acest topic. Este posibil ca sa nu fiu inteles ce vreau, imi cer scuze pentru limbajul non-tehnic daca e cazul.

Folosind bootstrap4, jquery si javascript, in cadrul unui modal, am nevoie sa deschid o alta pagina, de pe serverul meu, in care voi avea script, variabile.. un qr-reader.

pentru ca, componenta/script-ul are o problema cunoscuta in momentul in care vrei sa dai stop la camera (promise) , adesea nu-si gaseste propriile item-uri si are erori pentru motive care nu ne interesează acum.

ideea ca m-am gândit cumva sa pot închide ca pe o pagina/fereastra conținutul paginii deschise in modal, odata cu închiderea acelui modal.

fie prin iframe, sau.. ce alta varianta as putea alege?

practic e nevoie sa incarc o pagina in conținutul unui div apoi sa simulez realmente închiderea paginii incarcate.

ps: rezultatul codului qr o sa-l plasez într-un cookie, pe care il voi citii/sterge din pagina gazda.

Edited by mellbo, 12 December 2020 - 11:06.


#2
RedDev

RedDev

    Active Member

  • Grup: Members
  • Posts: 1,933
  • Înscris: 29.10.2014
Modal-urile au evenimente si/sau metode prin care se pot inchide.

Pentru modal-ul din Bootstrap ai:

https://getbootstrap...nts/modal/#hide
https://getbootstrap.../modal/#dispose

Una peste alta ti se inchide modal-ul si cu acesta se va sterge continutul sau. Altfel spus, cand il vei redeschide, se va repeta apelul AJAX (banuiesc ca asta faci) si o luam de la inceput.

Nu e clar ce vrei sa spui prin "închiderea paginii incarcate". Exista un eveniment in JS: onunload. Daca e vorba de acela, poti apela ce cod JS se executa cand inchizi modal-ul.

Edited by RedDev, 12 December 2020 - 11:52.


#3
mellbo

mellbo

    Member

  • Grup: Members
  • Posts: 885
  • Înscris: 07.06.2010
modal-ul de fapt nu se închide decât daca-l creezi din cod. in rest sunt definite si doar se ascund. dar chiar și asa, o variabila definita, nu se va șterge cu doar ștergerea din dom a componentelor.

nu doresc sa capturez un eveniment. total altceva doresc. pe mine asta ma interesează. cumva sa fie realmente window close.

ps: vreau sa fie elberata pagina încărcată, exact cum se întâmplă când închizi din browser o pagina. cu variabile, conținut bind-uri la evenimente si tot tacamul.

Edited by mellbo, 12 December 2020 - 12:11.


#4
RedDev

RedDev

    Active Member

  • Grup: Members
  • Posts: 1,933
  • Înscris: 29.10.2014
Un modal e format din cod HTML si, eventual, cod Javascript.

Pur si simplu va trebui sa scrii codul care deconecteaza evenimentele, sterge variabilele folosite (depinde, daca folosesti let ar trebui sa se dealoce automat), etc. atunci cand apesi "X"-ul modal-ului.

#5
mellbo

mellbo

    Member

  • Grup: Members
  • Posts: 885
  • Înscris: 07.06.2010
am incercat deja asta. sa șterg manual variabile dar codul e o componenta si e prea complex sa stau sa caut toate bind-urile si variabilele. mai oe scurt am esuat in aceasta încercare, pe langa cea de depanare cod a componentei publicata pe github. practic are aceasi problema, nu reuseste sa elimine anumite variabile din motive evidente deja, dar par fara soluție.

de asta caut o soluție asa cum am explicat. cumva trebuie sa existe o posibilitate sa încarci o fereastra intr-un layer, div, iframe, apoi sa-l închizi cu totul, lăsând browser-ul sa stearga nativ resursele ramase.

Edited by mellbo, 12 December 2020 - 12:39.


#6
RedDev

RedDev

    Active Member

  • Grup: Members
  • Posts: 1,933
  • Înscris: 29.10.2014
Exista metode de a face rost de toate evenimentele atasate unui element. De asemenea de a gasi toate variabilele atasate.

#7
coniac

coniac

    Member

  • Grup: Members
  • Posts: 497
  • Înscris: 17.12.2019
if = document.createElement('iframe');
if.src = ...
document.body.appendChild(if);//sau modal.appendChild(if)

...

if.remove()
Incearca

#8
mellbo

mellbo

    Member

  • Grup: Members
  • Posts: 885
  • Înscris: 07.06.2010

View Postconiac, on 12 decembrie 2020 - 14:29, said:

if = document.createElement('iframe');
if.src = ...
document.body.appendChild(if);//sau modal.appendChild(if)

...

if.remove()
Incearca

nu merge. se sterg doar componentele din DOM. ceea ce ma si asteptam. dar partea din script care a fost incarcata ramane in memorie.

Edited by mellbo, 12 December 2020 - 14:40.


#9
coniac

coniac

    Member

  • Grup: Members
  • Posts: 497
  • Înscris: 17.12.2019
if.src = "about:blank";
if.reload()
?

https://stackoverflo...javascript-file
incearca ultimul raspuns

#10
mellbo

mellbo

    Member

  • Grup: Members
  • Posts: 885
  • Înscris: 07.06.2010
merge.
am preferat ceva de genul
$('#iFrameX').attr('src','');

dar merge cum ai spus ultima varianta.

chiar face ce vreau, sa ma scape de pagina cu toate erorile ei. hehe Posted Image

Edited by mellbo, 12 December 2020 - 16:46.


Anunturi

Second Opinion Second Opinion

Folosind serviciul second opinion ne puteți trimite RMN-uri, CT -uri, angiografii, fișiere .pdf, documente medicale.

Astfel vă vom putea da o opinie neurochirurgicală, fără ca aceasta să poată înlocui un consult de specialitate. Răspunsurile vor fi date prin e-mail în cel mai scurt timp posibil (de obicei în mai putin de 24 de ore, dar nu mai mult de 48 de ore). Second opinion – Neurohope este un serviciu gratuit.

www.neurohope.ro

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate