Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: krpano.com Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

Montag, 20. März 2023, 12:02

How to scroll html in plugin?

I created a plugin to show modal when clicking on hotspot , by passing in html but I can't use the scroll wheel to move the content of the html , it only changes the zoom, I tried giving the plugin a value onhover_autoscrolling= "false" but still not working *confused*
*thumbup* Woody *thumbup* KEEP MOVING FORWARD *thumbup*

kme

Fortgeschrittener

Beiträge: 310

Wohnort: Belgium

Beruf: Long time coder, product manager and 3D enthousiast

  • Nachricht senden

2

Montag, 20. März 2023, 13:16

I created a plugin to show modal when clicking on hotspot , by passing in html but I can't use the scroll wheel to move the content of the html , it only changes the zoom, I tried giving the plugin a value onhover_autoscrolling= "false" but still not working *confused*

Can you share some code on how you create the "modal" ?

3

Montag, 20. März 2023, 14:23

I created a plugin to show modal when clicking on hotspot , by passing in html but I can't use the scroll wheel to move the content of the html , it only changes the zoom, I tried giving the plugin a value onhover_autoscrolling= "false" but still not working *confused*

Can you share some code on how you create the "modal" ?

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
function krpanoplugin(){
    var local = this;   // save the 'this' pointer from the current plugin object

    var krpano = null;  // the krpano and plugin interface objects
    var plugin = null;

    var xml_value = 100.0;   // the value for a custom xml attribute

    // registerplugin - startup point for the plugin (required)
    // - krpanointerface = krpano interface object
    // - pluginpath = the fully qualified plugin name (e.g. "plugin[name]")
    // - pluginobject = the xml plugin object itself
    local.registerplugin = function(krpanointerface, pluginpath, pluginobject)
    {
        // get the krpano interface and the plugin object
        krpano = krpanointerface;
        plugin = pluginobject;


 

        // optionally - add some graphical content:

        // register the size of the content
        plugin.width = "100%";
plugin.height = "100%";plugin.align = "center"
        // use 100% width/height for automatic scaling with the plugin size
        var text = document.createElement("div");
        text.style.cssText = "width:100%;height:100%;"+
            "display:flex;color:white;background:rgba(10,50,100,0.5);"+
            "align-items:center;justify-content:center;text-align:center;";
        text.innerHTML = `<div id="myModal" class="modal">
		
		<div class= "container-fluid">
			
			<div class ="row" id ="content-3d">
				<span class="close" id="close1">&times;</span>
				<div class="col-xs-12 col-sm-12 col-md-8 col-lg-8">
		<!-- Modal content -->
		<div class="modal-content" id="modal-content">
			<div id="model-viewer">
			</div>
		</div>
				</div>
				<div class="col-xs-12 col-sm-12 col-md-4 col-lg-4">
					<div class="box">
		<div id="table" class="infoTable">
			<!-- Modal content -->
			<div class="modal-table">
				<div id="model-viewer">
					<div id="info" class="display" style="width:100%">
						<div>
							<div style="margin: 10px 0px;font-size: 18px;color: rgb(255 255 255);display: block;background-color: #80808075;font-weight: 500;padding: 5px;">Tên sản phẩm: </div><span
								id="info-name">Unknown</span>
							<div id = "gioithieu" style="margin: 10px 0px;font-size: 18px;color: rgb(255 255 255);display: block;background-color: #80808075;font-weight: 500;padding: 5px;">Giới thiệu: </div><span
								id="info-features">Unknown</span>
							<div id ="thanhphan" style="margin: 10px 0px;font-size: 18px;color: rgb(255 255 255);display: block;background-color: #80808075;font-weight: 500;padding: 5px;">Thành phần: </div>
							<span id="info-specs">Unknown</span>
							<div id="luuy" style="margin: 10px 0px;font-size: 18px;color: rgb(255 255 255);display: block;background-color: #80808075;font-weight: 500;padding: 5px;">Thông tin khác: </div><span
								id="info-warning">Unknown</span>
						</div>
					</div>
				</div>
			</div>
		</div>
	</div>

	</div>
	</div>
	</div>
</div>`;

        // the plugin 'sprite' variable is the internal html element of the plugin
        plugin.sprite.appendChild(text);
    }

    // unloadplugin - exit point for the plugin (optionally)
    // - will be called from krpano when the plugin will be removed
    // - everything that was added by the plugin should be removed here
    local.unloadplugin = function()
    {
        plugin = null;
        krpano = null;
    }

    // onresize (optionally)
    // - width,height = the new size for the plugin
    // - when not defined then only the krpano plugin html element will be sized
    local.onresize = function(width,height)
    {
        // not used in this example
        // the plugin content will resize automatically because
        // of the width=100%, height=100% CSS style
        return false;
    }

  



     }
*thumbup* Woody *thumbup* KEEP MOVING FORWARD *thumbup*

4

Montag, 20. März 2023, 14:25

in tour.xml file

Quellcode

1
<plugin name ="modal" visible ="false" url ="modal.js" keep ="true">
*rolleyes*
*thumbup* Woody *thumbup* KEEP MOVING FORWARD *thumbup*

kme

Fortgeschrittener

Beiträge: 310

Wohnort: Belgium

Beruf: Long time coder, product manager and 3D enthousiast

  • Nachricht senden

5

Montag, 20. März 2023, 14:51

The setting onhover_autoscrolling= "false" is only for the scrollarea plugin (https://krpano.com/plugins/scrollarea/) Since you created your own plugin, you need to handle this yourself.

You can disable scrolling by setting the "disablewheel" of the control to true.
https://krpano.com/docu/xml/#control.disablewheel

krpano action code:

Quellcode

1
set(control.disablewheel, true);


And you can set it to false again when hiding the dialog.

gr,
kme
.

6

Dienstag, 21. März 2023, 02:33

The setting onhover_autoscrolling= "false" is only for the scrollarea plugin (https://krpano.com/plugins/scrollarea/) Since you created your own plugin, you need to handle this yourself.

You can disable scrolling by setting the "disablewheel" of the control to true.
https://krpano.com/docu/xml/#control.disablewheel

krpano action code:

Quellcode

1
set(control.disablewheel, true);


And you can set it to false again when hiding the dialog.

gr,
kme
.
thank you very much, it's work
*thumbup* Woody *thumbup* KEEP MOVING FORWARD *thumbup*

7

Dienstag, 21. März 2023, 03:43

*love*
*thumbup* Woody *thumbup* KEEP MOVING FORWARD *thumbup*

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »yenph« (21. März 2023, 05:05)


8

Dienstag, 21. März 2023, 14:04

Hi,

I would recommend using the built-in HTML layer (type="html"):
https://krpano.com/docu/xml/#layer.type

There the scrolling can be controlled using the htmloverflow setting and mouse and touch is automatically supported:
https://krpano.com/docu/xml/#layer.htmloverflow

Best regards,
Klaus