Git Product home page Git Product logo

Comments (6)

tosone avatar tosone commented on May 26, 2024 1

After i remove the fade, it works well.
i think i need this function

window.setInterval(function () {
    if($('modal').is(':animate')) {
    }
},100)

Thank you.

from croppie.

thedustinsmith avatar thedustinsmith commented on May 26, 2024

The problem is the croppie element is being bound when it isn't visible. The logic to prohibit dragging outside boundaries and zooming within the boundaries is heavily dependent on the element being visible.

As a quick fix, you could copy line 125 from index.html and paste it inside your $('#head_face').click() after you show the modal. Binding the image calls all the functions we need to update those boundaries properly, and placing the bind after the modal is shown would do just that.

As a more permanent solution, I think we probably need to provide a refresh() method on a croppie instance, for scenarios when the croppie wasn't visible when it was bound, but becomes visible later.

from croppie.

tosone avatar tosone commented on May 26, 2024

The code evaluate the image's position relative to its parent. but its parent node should not be my modal, evalute the image's position must be base on its parent which with releative attr. so my modal's position should not effect your code.

And i have tried as you said, but failed. o.o

from croppie.

thedustinsmith avatar thedustinsmith commented on May 26, 2024

Since you're using bootstrap's modals and they animate, you'll have to wait until that animation is finished before you rebind your croppie element.

from croppie.

thedustinsmith avatar thedustinsmith commented on May 26, 2024

Thanks for the suggestion.

I've added a refresh method on the croppie instance. You should be able to call that without providing the binding data after the croppie element is visible and not moving.

That'll be included in the next bower/npm release.

from croppie.

syntacticsolutions avatar syntacticsolutions commented on May 26, 2024

I fixed this with the following code

Croppie.prototype.refresh = function(){ let zoom = (this.get()).zoom; this.setZoom(zoom - .01); }

from croppie.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.